mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-31 00:03:57 -04:00 
			
		
		
		
	Reject huge_pages=on if shared_memory_type=sysv.
It doesn't work (it could, but hasn't been implemented). Back-patch to 12, where shared_memory_type arrived. Reported-by: Alexander Lakhin <exclusion@gmail.com> Reviewed-by: Alexander Lakhin <exclusion@gmail.com> Discussion: https://postgr.es/m/163271880203.22789.1125998876173795966@wrigleys.postgresql.org
This commit is contained in:
		
							parent
							
								
									a030a0c5cc
								
							
						
					
					
						commit
						8781b0ce25
					
				| @ -1664,7 +1664,9 @@ include_dir 'conf.d' | |||||||
|        <para> |        <para> | ||||||
|         At present, this setting is supported only on Linux and Windows. The |         At present, this setting is supported only on Linux and Windows. The | ||||||
|         setting is ignored on other systems when set to |         setting is ignored on other systems when set to | ||||||
|         <literal>try</literal>. |         <literal>try</literal>.  On Linux, it is only supported when | ||||||
|  |         <varname>shared_memory_type</varname> is set to <literal>mmap</literal> | ||||||
|  |         (the default). | ||||||
|        </para> |        </para> | ||||||
| 
 | 
 | ||||||
|        <para> |        <para> | ||||||
|  | |||||||
| @ -703,6 +703,12 @@ PGSharedMemoryCreate(Size size, | |||||||
| 				 errmsg("huge pages not supported on this platform"))); | 				 errmsg("huge pages not supported on this platform"))); | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  | 	/* For now, we don't support huge pages in SysV memory */ | ||||||
|  | 	if (huge_pages == HUGE_PAGES_ON && shared_memory_type != SHMEM_TYPE_MMAP) | ||||||
|  | 		ereport(ERROR, | ||||||
|  | 				(errcode(ERRCODE_FEATURE_NOT_SUPPORTED), | ||||||
|  | 				 errmsg("huge pages not supported with the current shared_memory_type setting"))); | ||||||
|  | 
 | ||||||
| 	/* Room for a header? */ | 	/* Room for a header? */ | ||||||
| 	Assert(size > MAXALIGN(sizeof(PGShmemHeader))); | 	Assert(size > MAXALIGN(sizeof(PGShmemHeader))); | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user