Re: BUG #14098: misleading message "out of shared memory" when lock table space exhausted

From: John Lumby <johnlumby(at)hotmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql bugs <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #14098: misleading message "out of shared memory" when lock table space exhausted
Date: 2016-04-19 14:45:11
Message-ID: COL131-W47CA8FA5A2B204766E905AA36C0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs


Thanks Tom,

However Can you please explain a little more on this.

Firstly, the documentation (Server Configuration, Lock Management) is very clear :

_____________________________________________________
max_locks_per_transaction (integer)

The shared lock table tracks locks on
max_locks_per_transaction * (max_connections + max_prepared_transactions) objects (e.g., tables);

hence, *no more* than this many distinct objects can be locked at any one time.
_____________________________________________________

That apparently seems to support what I said and contradicts your assertion -
depending on what you meant by "hard" separation.

So if what you stated is correct,  then two comments :

  .    the documentation must be incorrect and should be corrected.
  .    can you please state exactly what is the limit for how many
       distinct objects can be locked at any one time,  based on configuration parameters.
       If this number can exceed max_locks_per_transaction * (max_connections + max_prepared_transactions),
       then is this done by
            a) dynamically extending shared memory
            b) incursing into some other component's nominal portion of shared memory,
               (the amount it says it needs during postgresql startup when the total size of the
                initial shared memory segment is being computed)
       If b),  then can other components equally incurse into the nominal lock table space?

Cheers, John

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2016-04-19 16:42:47 Re: Re: BUG #14098: misleading message "out of shared memory" when lock table space exhausted
Previous Message nathanmascitelli 2016-04-19 12:30:34 BUG #14101: Postgres Service Crashes With Memory Error And Does Not Recover