Date: Mon, 02 May 2005 16:29:23 -0500 From: Jonathan Noack <noackjr@alumni.rice.edu> To: "Marc G. Fournier" <scrappy@hub.org> Cc: Alexander Rusinov <boot@eurocom.od.ua> Subject: Re: PostgreSQL in FreeBSD jails Message-ID: <42769BB3.1050509@alumni.rice.edu> In-Reply-To: <20050502180152.I53065@ganymede.hub.org> References: <426E5713.3010906@eurocom.od.ua> <747dc8f30504260812ee3c47e@mail.gmail.com> <426E5EA5.8000703@eurocom.od.ua> <426F3AFA.9020900@konvergencia.hu> <426F5A6E.4050208@eurocom.od.ua> <86acndmyky.fsf@xps.des.no> <4276910A.3040100@criticalmagic.com> <20050502180152.I53065@ganymede.hub.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] On 5/2/2005 4:03 PM, Marc G. Fournier wrote: > yOn Mon, 2 May 2005, Richard Coleman wrote: >> Dag-Erling Smørgrav wrote: >>> There are two possible solutions: >>> >>> - hack the SysV IPC code to use separate namespaces for each jail >>> >>> - make PostgreSQL use POSIX shared memory instead of SysV shared >>> memory >>> >>> I suspect that the latter is significantly easier, and would probably >>> improve performance as well. >>> >>> DES >> >> It might be easier to hack PostgreSQL so that the shared memory >> identifier depends not only on the port, but also on the IP address >> (which will of course be different for each jail). Or better yet, to >> be able to specify the shared memory identifier to use directly in the >> config file. > > You've all lost me here ... what exactly is the problem? PostgreSQL > works under FreeBSD 4.x jails without any modifications, so how is > PostgreSQL itself currently broken? It seems to me that the problem is > with FreeBSD 5.x's jail side of things, if the same daemon runs fine > under 4.x, but, nto under 5.x ... From my reading on this thread: PostgreSQL generates the shared memory identifier based on the port it is running on, but (on 5.x at least) shared memory is not segregated between jails. Thus, a new instance will corrupt the shared memory of another instance (in another jail, on another IP address, etc.) *if* they are running on the same port. The workaround is to ensure every instance (regardless of jail or IP address) is running on a unique port. -- Jonathan Noack | noackjr@alumni.rice.edu | OpenPGP: 0x991D8195 [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (MingW32) iD8DBQFCdpuzUFz01pkdgZURAiAUAJ9V3OQnGBQb1S5qM6t2UPBdswRpdwCfcXoN HFm10lNix5rqSgxyKNVQzKI= =OJEI -----END PGP SIGNATURE-----
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42769BB3.1050509>
