Re: doc patch for savepoints

Joseph Shraibman <jks@selectacast.net>

From: Joseph S <jks@selectacast.net>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers@postgresql.org, pgsql-patches@postgresql.org
Date: 2006-11-28T02:01:16Z
Lists: pgsql-hackers
Tom Lane wrote:
> Joseph Shraibman <jks@selectacast.net> writes:
>> +   <para>
>> +    Savepoints use shared memory.  If you use many savepoints without 
>> releasing them, you
>> +    will run out of shared memory and you may see an error like this in 
>> your log:
> 
> I do not see the point of this.  Shall we put equivalent disclaimers
> into every single construct that consumes shared memory?  There is no
> such paragraph under LOCK TABLE, for example.
> 
Because one is unlikely to lock so many tables that they run out of 
shared memory.  On the other hand if someone does like I did, which is 
in a loop:

SAVEPOINT ;
UPDATE;

and does not realize that SAVEPOINT uses shared memory they can get 
themselves in trouble.

You don't have to have the error message example, but I really think 
some sort of message is needed.  Right now it is not clear that 
savepoints use shared memory at all.  A user might assume they just 
exist on the disk somehow, or in regular nonshared memory.