Re: running pgsql 7 under Jail'ed virtual machine on FreeBSD 4.2

From: Alex Pilosov <alex(at)pilosoft(dot)com>
To: Dave VanAuken <dave(at)hawk-systems(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: running pgsql 7 under Jail'ed virtual machine on FreeBSD 4.2
Date: 2001-01-05 18:50:18
Message-ID: Pine.BSO.4.10.10101051341140.31095-100000@spider.pilosoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-general pgsql-hackers

Here's the story about pgsql and jail:

1. FreeBSD shared memory is _really_ shared across all jail VMs. I think
its not going to change, as this seems like a great way for processes to
exchange data...But I could be wrong. :)

2. Postgres uses some funky math to determine which shmid to use for
different memory allocations it needs. The problem with that it has no
idea about jails and will not generate a different shmid for different
processes, so postgres processes end up stepping on each other's toes.

See include/storage/ipc.h, definition of SystemPortAddressGetIPCKey, and
you'll understand what I mean.

To properly fix this, I think this should be done:

Another (optional) backend parameter which should determine offset
(hardcoded now to 17491) for allocation of different shmids...

comments? TODO?

On Thu, 4 Jan 2001, Dave VanAuken wrote:

> Have a FreeBSD 4.2 box... have created two Virtual machines with the
> jail process.
> Apache and PHp configure and execute fine, but am having some
> configuration and execution problems with pgsql... not sure if I am
> missing something or if pgsql just cannot deal with being in the jail
> and sharing the sysv memory
>
> Attempting to manually start the postmaster produces the following:
>
> %postmaster -i
> IpcMemoryCreate: shmget failed (Function not implemented) key=5432010,
> size=144, permission=700
> This type of error is usually caused by an improper
> shared memory or System V IPC semaphore configuration.
> For more information, see the FAQ and platform-specific
> FAQ's in the source directory pgsql/doc or on our
> web site at http://www.postgresql.org.
> IpcMemoryIdGet: shmget failed (Function not implemented) key=5432010,
> size=144, permission=0
> IpcMemoryAttach: shmat failed (Function not implemented) id=-2
> FATAL 1: AttachSLockMemory: could not attach segment
> %
>
> Have modified the sysctl.conf file to allow usage of sysv memory, but
> as it is already shared from the host machine, this may be causing
> pgsql to barf on it.
>
> Searching for jail faq's and posts regarding this matter produces some
> close, but not helpful posts regarding chroot'ed environments.
>
> Any insights, requests for details, and assistance are appreciated.
>
> Dave
>
>

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Jason Meade 2001-01-05 19:14:38 install on Solaris
Previous Message Tom Lane 2001-01-05 17:10:04 Re: Postmaster crashes with "Serverloop: select failed" message

Browse pgsql-general by date

  From Date Subject
Next Message Alex Pilosov 2001-01-05 18:53:55 DBD::Pg and NOTIFY (was Re: Synchronous LISTEN/NOTIFY?)
Previous Message Michael Davis 2001-01-05 18:44:17 RE: Using Postgres with Access 2000

Browse pgsql-hackers by date

  From Date Subject
Next Message Alex Pilosov 2001-01-05 19:13:26 Re: Well, we seem to be proof against cache-inval problems now
Previous Message Tom Lane 2001-01-05 16:20:43 Re: [HACKERS] Re: pg_dump return status..