diff options
author | Thomas Munro <tmunro@postgresql.org> | 2021-10-26 12:54:55 +1300 |
---|---|---|
committer | Thomas Munro <tmunro@postgresql.org> | 2021-10-26 13:01:52 +1300 |
commit | 8fef901e3fe2119c434c93c9f05063633a43eaad (patch) | |
tree | f12bd180e823349b7eaced89046abe0c65815adf /src | |
parent | 90eb17088a3659d0a60f3d1d59cef9325705aa81 (diff) | |
download | postgresql-8fef901e3fe2119c434c93c9f05063633a43eaad.tar.gz postgresql-8fef901e3fe2119c434c93c9f05063633a43eaad.zip |
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
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/port/sysv_shmem.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/backend/port/sysv_shmem.c b/src/backend/port/sysv_shmem.c index 3267648c959..bbe1a682acb 100644 --- a/src/backend/port/sysv_shmem.c +++ b/src/backend/port/sysv_shmem.c @@ -649,6 +649,12 @@ PGSharedMemoryCreate(Size size, int port, errmsg("huge pages not supported on this platform"))); #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? */ Assert(size > MAXALIGN(sizeof(PGShmemHeader))); |