Frequently Asked Questions (FAQ) for PostgreSQL
- Last updated: Sat Feb 2 16:46:36 EST 2002
+ Last updated: Tue Feb 12 12:14:52 EST 2002
Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us)
4.15.2) How do I get the value of a SERIAL insert?
4.15.3) Don't currval() and nextval() lead to a race condition with
other users?
+ 4.15.4) Why aren't my sequence numbers reused on transaction abort?
+ Why are there gaps in the numbers of my sequence/SERIAL column?
4.16) What is an OID? What is a TID?
4.17) What is the meaning of some of the terms used in PostgreSQL?
4.18) Why do I get the error "ERROR: Memory exhausted in
No. Currval() returns the current value assigned by your backend, not
by all users.
+ 4.15.4) Why aren't my sequence numbers reused on transaction abort? Why are
+ there gaps in the numbers of my sequence/SERIAL column?
+
+ To improve concurrency, sequence values are given out to running
+ transactions as needed and are now locked until the transaction
+ completes. This causes gaps in numbering from aborted transactions.
+
4.16) What is an OID? What is a TID?
OIDs are PostgreSQL's answer to unique row ids. Every row that is
alink="#0000ff">
<H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1>
- <P>Last updated: Sat Feb 2 16:46:36 EST 2002</P>
+ <P>Last updated: Tue Feb 12 12:14:52 EST 2002</P>
<P>Current maintainer: Bruce Momjian (<A href=
"mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>)<BR>
<SMALL>SERIAL</SMALL> insert?<BR>
<A href="#4.15.3">4.15.3</A>) Don't <I>currval()</I> and
<I>nextval()</I> lead to a race condition with other users?<BR>
+ <A href="#4.15.4">4.15.4</A>) Why aren't my sequence numbers reused
+ on transaction abort? Why are there gaps in the numbers of my
+ sequence/SERIAL column?<BR>
<A href="#4.16">4.16</A>) What is an <SMALL>OID</SMALL>? What is a
<SMALL>TID</SMALL>?<BR>
<A href="#4.17">4.17</A>) What is the meaning of some of the terms
<P>No. Currval() returns the current value assigned by your
backend, not by all users.</P>
+ <H4><A name="4.15.4">4.15.4</A>) Why aren't my sequence numbers reused
+ on transaction abort? Why are there gaps in the numbers of my
+ sequence/SERIAL column?</H4>
+
+ <P>To improve concurrency, sequence values are given out to running
+ transactions as needed and are now <i>locked</i> until the
+ transaction completes. This causes gaps in numbering from aborted
+ transactions.
+
<H4><A name="4.16">4.16</A>) What is an <SMALL>OID</SMALL>? What is
a <SMALL>TID</SMALL>?</H4>