Re: [BUGS] Re: [PATCH] BUG #13416: Postgres>= 9.3 doesn't use optimized shared memory on Solarisanymore - Mailing list pgsql-bugs

From Sean Chittenden
Subject Re: [BUGS] Re: [PATCH] BUG #13416: Postgres>= 9.3 doesn't use optimized shared memory on Solarisanymore
Date
Msg-id b0522138-40bb-4775-ad69-eb67fb7e3521@Spark
Whole thread Raw
In response to Re: [BUGS] Re: [PATCH] BUG #13416: Postgres >= 9.3 doesn't useoptimized shared memory on Solaris anymore  (Andres Freund <andres@anarazel.de>)
List pgsql-bugs
Fair enough.  We observed a ~4x amplification in memory usage so it was rather severe in our case.

The patch you referenced was a much nicer approach and Sam updated it to match that style (thank you Sam!).  We debated this internally and feel strongly that this should be exposed as a runtime GUC as suggested.  What's your take on the attached patch?

-sc



--
Sean Chittenden
seanc@joyent.com

On Oct 4, 2017, 10:56 AM -0700, Andres Freund <andres@anarazel.de>, wrote:
Hi,

On 2017-10-04 10:47:06 -0700, Sean Chittenden wrote:
Hello.  We identified the same problem.  Sam Gwydir and Josh Clulow were able to put together the appropriate fix after.

The breakage in src/backend/port/sysv_shmem.c and src/include/storage/dsm_impl.h should be back ported to all supported versions (the regression was introduced between the 9.2 and 9.3 branches).

Personally I don't think "breakage" is quite the right work.

I also don't like that we're unconditionally not using
USE_ANONYMOUS_SHMEM - doesn't that run into similar config limits on
solaris based stuff as it does on linux etc?

I think if we want to do this, we should rather go with a patch like
https://www.postgresql.org/message-id/20140422121921.GD4449@awork2.anarazel.de

Greetings,

Andres Freund
Attachment

pgsql-bugs by date:

Previous
From: Andres Freund
Date:
Subject: Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when calledfrom inside pl/pgsql
Next
From: Tom Lane
Date:
Subject: Re: [BUGS] pg_logical_slot_peek_changes crashes postgres when called from inside pl/pgsql