mirror of
https://github.com/postgres/postgres.git
synced 2025-11-25 12:03:53 +03:00
Fix ALTER SEQUENCE so that it does not affect the value of currval() for
the sequence. Also, make setval() with is_called = false not affect the currval state, either. Per report from Kris Jurka that an implicit ALTER SEQUENCE OWNED BY unexpectedly caused currval() to become valid. Since this isn't 100% backwards compatible, it will go into HEAD only; I'll put a more limited patch into 8.2.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<!--
|
||||
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_sequence.sgml,v 1.18 2007/10/03 16:48:43 tgl Exp $
|
||||
$PostgreSQL: pgsql/doc/src/sgml/ref/alter_sequence.sgml,v 1.19 2007/10/25 18:54:03 tgl Exp $
|
||||
PostgreSQL documentation
|
||||
-->
|
||||
|
||||
@@ -114,7 +114,10 @@ ALTER SEQUENCE <replaceable class="parameter">name</replaceable> SET SCHEMA <rep
|
||||
<para>
|
||||
The optional clause <literal>RESTART WITH <replaceable
|
||||
class="parameter">start</replaceable></literal> changes the
|
||||
current value of the sequence.
|
||||
current value of the sequence. This is equivalent to calling the
|
||||
<function>setval</> function with <literal>is_called</literal> =
|
||||
<literal>false</>: the specified value will be returned by the
|
||||
<emphasis>next</> call of <function>nextval</>.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@@ -226,6 +229,12 @@ ALTER SEQUENCE <replaceable class="parameter">name</replaceable> SET SCHEMA <rep
|
||||
immediately.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<command>ALTER SEQUENCE</command> does not affect the <function>currval</>
|
||||
status for the sequence. (Before <productname>PostgreSQL</productname>
|
||||
8.3, it sometimes did.)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Some variants of <command>ALTER TABLE</command> can be used with
|
||||
sequences as well; for example, to rename a sequence it is also
|
||||
|
||||
Reference in New Issue
Block a user