Browse Source
			
			
			branches/zip: Write PAGE_MAX_TRX_ID to the redo log. Otherwise,
			
				
		branches/zip: Write PAGE_MAX_TRX_ID to the redo log. Otherwise,
	
		
	
			
				transactions that are started before the rollback of incomplete transactions has finished may have an inconsistent view of the secondary indexes. dict_index_is_sec_or_ibuf(): Auxiliary function for controlling updates and checks of PAGE_MAX_TRX_ID: check whether an index is a secondary index or the insert buffer tree. page_set_max_trx_id(), page_update_max_trx_id(), lock_rec_insert_check_and_lock(), lock_sec_rec_modify_check_and_lock(), btr_cur_ins_lock_and_undo(), btr_cur_upd_lock_and_undo(): Add the parameter mtr. page_set_max_trx_id(): Allow mtr to be NULL. When mtr==NULL, do not attempt to write to the redo log. This only occurs when creating a page or reorganizing a compressed page. In these cases, the PAGE_MAX_TRX_ID will be set correctly during the application of redo log records, even though there is no explicit log record about it. btr_discard_only_page_on_level(): Preserve PAGE_MAX_TRX_ID. This function should be unreachable, though. btr_cur_pessimistic_update(): Update PAGE_MAX_TRX_ID. Add some assertions for checking that PAGE_MAX_TRX_ID is set on all secondary index leaf pages. rb://115 tested by Michael, fixes Issue #211pull/374/head
				 12 changed files with 171 additions and 40 deletions
			
			
		- 
					12ChangeLog
- 
					27btr/btr0btr.c
- 
					35btr/btr0cur.c
- 
					7ibuf/ibuf0ibuf.c
- 
					10include/dict0dict.h
- 
					20include/dict0dict.ic
- 
					9include/lock0lock.h
- 
					6include/page0page.h
- 
					17include/page0page.ic
- 
					17lock/lock0lock.c
- 
					30page/page0page.c
- 
					21page/page0zip.c
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue