mirror of
				https://github.com/postgres/postgres.git
				synced 2025-11-03 09:13:20 +03:00 
			
		
		
		
	Allow _h_indexbuild() to be interrupted.
When we are building a hash index that is large enough to need pre-sorting (larger than either maintenance_work_mem or NBuffers), the initial sorting phase is interruptible, but the insertion phase wasn't. Add the missing CHECK_FOR_INTERRUPTS(). Per bug #18616 from Alexander Lakhin. Back-patch to all supported branches. Pavel Borisov Discussion: https://postgr.es/m/18616-acbb9e5caf41e964@postgresql.org
This commit is contained in:
		@@ -146,6 +146,9 @@ _h_indexbuild(HSpool *hspool, Relation heapRel)
 | 
			
		||||
 | 
			
		||||
		_hash_doinsert(hspool->index, itup, heapRel);
 | 
			
		||||
 | 
			
		||||
		/* allow insertion phase to be interrupted, and track progress */
 | 
			
		||||
		CHECK_FOR_INTERRUPTS();
 | 
			
		||||
 | 
			
		||||
		pgstat_progress_update_param(PROGRESS_CREATEIDX_TUPLES_DONE,
 | 
			
		||||
									 ++tups_done);
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user