Re: Areas for Solaris support modernization
Greg Burd <greg@burd.me>
From: "Greg Burd" <greg@burd.me>
To: "Tom Lane" <tgl@sss.pgh.pa.us>
Cc: "PostgreSQL Hackers" <pgsql-hackers@lists.postgresql.org>,
"Thomas Munro" <thomas.munro@gmail.com>
Date: 2026-03-02T20:40:56Z
Lists: pgsql-hackers
On Mon, Mar 2, 2026, at 3:28 PM, Tom Lane wrote: > "Greg Burd" <greg@burd.me> writes: >> I've started a build/test on "icarus" with your patch applied. I'll let you know how it goes, hopefully that won't take as long now. > > Cool. Here's also a patch to switch the semaphore API. > I've tested both patches on OpenIndiana, but a confirmation > from icarus would be good. Roger, wilco. As soon as the previous patch run finishes up I'll start another with this additive change set. best. -greg > regards, tom lane > > > diff --git a/doc/src/sgml/runtime.sgml b/doc/src/sgml/runtime.sgml > index b4914faff1c..c1a3e5b779a 100644 > --- a/doc/src/sgml/runtime.sgml > +++ b/doc/src/sgml/runtime.sgml > @@ -1127,13 +1127,8 @@ projadd -c "PostgreSQL DB User" -K > "project.max-shm-memory=(privileged,8GB,deny) > </para> > > <para> > - Other recommended kernel setting changes for database servers > which will > - have a large number of connections are: > -<programlisting> > -project.max-shm-ids=(priv,32768,deny) > -project.max-sem-ids=(priv,4096,deny) > -project.max-msg-ids=(priv,4096,deny) > -</programlisting> > + To run a very large server, or multiple servers concurrently, > you > + might also need to raise > <literal>project.max-shm-ids</literal>. > </para> > > <para> > diff --git a/meson.build b/meson.build > index ddf5172982f..40fbbbcd3fe 100644 > --- a/meson.build > +++ b/meson.build > @@ -324,6 +324,7 @@ elif host_system == 'openbsd' > > elif host_system == 'sunos' > portname = 'solaris' > + sema_kind = 'unnamed_posix' > export_fmt = '-Wl,-M@0@' > # We need these #defines to get POSIX-conforming versions > # of many interfaces (sigwait, getpwuid_r, shmdt, ...). > diff --git a/src/template/solaris b/src/template/solaris > index a4d8d38a8f8..ea524fdb2bd 100644 > --- a/src/template/solaris > +++ b/src/template/solaris > @@ -1,4 +1,9 @@ > # src/template/solaris > > +# Prefer unnamed POSIX semaphores if available, unless user overrides choice > +if test x"$PREFERRED_SEMAPHORES" = x"" ; then > + PREFERRED_SEMAPHORES=UNNAMED_POSIX > +fi > + > # Extra CFLAGS for code that will go into a shared library > CFLAGS_SL="-fPIC" > > Attachments: > * change-sema-API-for-Solaris.patch
Commits
-
Switch the semaphore API on Solaris to unnamed POSIX.
- 0123ce131fca 19 (unreleased) landed
-
Fix aclitemout() to work during early bootstrap.
- 2eb87345e18e 19 (unreleased) landed