Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 866f4a7

Browse files
committed
In v10 release notes, call out sequence changes as a compatibility item.
The previous description didn't make it clear that this change potentially breaks applications, partly because the entry wasn't even in the compatibility-hazard section. Move and clarify. Discussion: https://postgr.es/m/603f3f0a-f89d-ae8b-1da9-a92fac16086d@enterprisedb.com
1 parent ed3dc22 commit 866f4a7

File tree

1 file changed

+37
-29
lines changed

1 file changed

+37
-29
lines changed

doc/src/sgml/release-10.sgml

+37-29
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,43 @@
151151

152152
<listitem>
153153
<!--
154+
2016-12-20 [1753b1b02] Add pg_sequence system catalog
155+
2016-11-18 [67dc4ccbb] Add pg_sequences view
156+
2017-05-15 [f8dc1985f] Fix ALTER SEQUENCE locking
157+
2017-06-01 [3d79013b9] Make ALTER SEQUENCE, including RESTART, fully transactio
158+
-->
159+
<para>
160+
Move sequences' metadata fields into a new <link
161+
linkend="catalog-pg-sequence"><structname>pg_sequence</></>
162+
system catalog (Peter Eisentraut)
163+
</para>
164+
165+
<para>
166+
A sequence relation now stores only the fields that can be modified
167+
by <function>nextval()</>, that
168+
is <structfield>last_value</>, <structfield>log_cnt</>,
169+
and <structfield>is_called</>. Other sequence properties, such as
170+
the starting value and increment, are kept in a corresponding row of
171+
the <structname>pg_sequence</> catalog.
172+
<command>ALTER SEQUENCE</> updates are now fully transactional,
173+
implying that the sequence is locked until commit.
174+
The <function>nextval()</> and <function>setval()</> functions
175+
remain nontransactional.
176+
</para>
177+
178+
<para>
179+
The main incompatibility introduced by this change is that selecting
180+
from a sequence relation now returns only the three fields named
181+
above. To obtain the sequence's other properties, applications must
182+
look into <structname>pg_sequence</>. The new system
183+
view <link linkend="view-pg-sequences"><structname>pg_sequences</></>
184+
can also be used for this purpose; it provides column names that are
185+
more compatible with existing code.
186+
</para>
187+
</listitem>
188+
189+
<listitem>
190+
<!--
154191
2017-01-04 [9a4d51077] Make wal streaming the default mode for pg_basebackup
155192
-->
156193
<para>
@@ -875,35 +912,6 @@
875912

876913
<listitem>
877914
<!--
878-
2016-12-20 [1753b1b02] Add pg_sequence system catalog
879-
2016-11-18 [67dc4ccbb] Add pg_sequences view
880-
2017-05-15 [f8dc1985f] Fix ALTER SEQUENCE locking
881-
2017-06-01 [3d79013b9] Make ALTER SEQUENCE, including RESTART, fully transactio
882-
-->
883-
<para>
884-
Create a <link
885-
linkend="catalog-pg-sequence"><structname>pg_sequence</></>
886-
system catalog to store sequence metadata (Peter Eisentraut)
887-
</para>
888-
889-
<para>
890-
Sequence metadata includes the start, increment, etc, properties.
891-
<command>ALTER SEQUENCE</> updates are now fully transactional,
892-
implying that the sequence is locked until commit. Sequences'
893-
current values are still stored in individual table files, and
894-
the <function>nextval()</> and <function>setval()</> functions
895-
remain nontransactional.
896-
</para>
897-
898-
<para>
899-
Also
900-
add <link linkend="view-pg-sequences"><structname>pg_sequences</></>
901-
view to show all sequences.
902-
</para>
903-
</listitem>
904-
905-
<listitem>
906-
<!--
907915
2017-03-08 [f9b1a0dd4] Expose explain's SUMMARY option
908916
-->
909917
<para>

0 commit comments

Comments
 (0)