summaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorPeter Eisentraut2017-09-25 15:59:46 +0000
committerPeter Eisentraut2017-09-29 17:37:30 +0000
commit2a14b9609df1de4f2eb5a97aff674aaad033a7e6 (patch)
treee792edbfba4cef98513d0eee98ae850d7e6e968b /src/test
parent136ab7c5a5f54fecea7c28c8550c19123245acf0 (diff)
psql: Update \d sequence display
For \d sequencename, the psql code just did SELECT * FROM sequencename to get the information to display, but this does not contain much interesting information anymore in PostgreSQL 10, because the metadata has been moved to a separate system catalog. This patch creates a newly designed sequence display that is not merely an extension of the general relation/table display as it was previously. Example: PostgreSQL 9.6: => \d foobar Sequence "public.foobar" Column | Type | Value ---------------+---------+--------------------- sequence_name | name | foobar last_value | bigint | 1 start_value | bigint | 1 increment_by | bigint | 1 max_value | bigint | 9223372036854775807 min_value | bigint | 1 cache_value | bigint | 1 log_cnt | bigint | 0 is_cycled | boolean | f is_called | boolean | f PostgreSQL 10 before this change: => \d foobar Sequence "public.foobar" Column | Type | Value ------------+---------+------- last_value | bigint | 1 log_cnt | bigint | 0 is_called | boolean | f New: => \d foobar Sequence "public.foobar" Type | Start | Minimum | Maximum | Increment | Cycles? | Cache --------+-------+---------+---------------------+-----------+---------+------- bigint | 1 | 1 | 9223372036854775807 | 1 | no | 1 Reviewed-by: Fabien COELHO <coelho@cri.ensmp.fr>
Diffstat (limited to 'src/test')
-rw-r--r--src/test/regress/expected/identity.out7
-rw-r--r--src/test/regress/expected/sequence.out13
-rw-r--r--src/test/regress/sql/identity.sql2
-rw-r--r--src/test/regress/sql/sequence.sql4
4 files changed, 26 insertions, 0 deletions
diff --git a/src/test/regress/expected/identity.out b/src/test/regress/expected/identity.out
index 2800ed7caab..5fa585d6cc5 100644
--- a/src/test/regress/expected/identity.out
+++ b/src/test/regress/expected/identity.out
@@ -32,6 +32,13 @@ SELECT pg_get_serial_sequence('itest1', 'a');
public.itest1_a_seq
(1 row)
+\d itest1_a_seq
+ Sequence "public.itest1_a_seq"
+ Type | Start | Minimum | Maximum | Increment | Cycles? | Cache
+---------+-------+---------+------------+-----------+---------+-------
+ integer | 1 | 1 | 2147483647 | 1 | no | 1
+Sequence for identity column: public.itest1.a
+
CREATE TABLE itest4 (a int, b text);
ALTER TABLE itest4 ALTER COLUMN a ADD GENERATED ALWAYS AS IDENTITY; -- error, requires NOT NULL
ERROR: column "a" of relation "itest4" must be declared NOT NULL before identity can be added
diff --git a/src/test/regress/expected/sequence.out b/src/test/regress/expected/sequence.out
index ea05a3382b8..2384b7dd815 100644
--- a/src/test/regress/expected/sequence.out
+++ b/src/test/regress/expected/sequence.out
@@ -535,6 +535,19 @@ SELECT * FROM pg_sequence_parameters('sequence_test4'::regclass);
-1 | -9223372036854775808 | -1 | -1 | f | 1 | 20
(1 row)
+\d sequence_test4
+ Sequence "public.sequence_test4"
+ Type | Start | Minimum | Maximum | Increment | Cycles? | Cache
+--------+-------+----------------------+---------+-----------+---------+-------
+ bigint | -1 | -9223372036854775808 | -1 | -1 | no | 1
+
+\d serialtest2_f2_seq
+ Sequence "public.serialtest2_f2_seq"
+ Type | Start | Minimum | Maximum | Increment | Cycles? | Cache
+---------+-------+---------+------------+-----------+---------+-------
+ integer | 1 | 1 | 2147483647 | 1 | no | 1
+Owned by: public.serialtest2.f2
+
-- Test comments
COMMENT ON SEQUENCE asdf IS 'won''t work';
ERROR: relation "asdf" does not exist
diff --git a/src/test/regress/sql/identity.sql b/src/test/regress/sql/identity.sql
index 7886456a569..e1b5a074c96 100644
--- a/src/test/regress/sql/identity.sql
+++ b/src/test/regress/sql/identity.sql
@@ -14,6 +14,8 @@ SELECT sequence_name FROM information_schema.sequences WHERE sequence_name LIKE
SELECT pg_get_serial_sequence('itest1', 'a');
+\d itest1_a_seq
+
CREATE TABLE itest4 (a int, b text);
ALTER TABLE itest4 ALTER COLUMN a ADD GENERATED ALWAYS AS IDENTITY; -- error, requires NOT NULL
ALTER TABLE itest4 ALTER COLUMN a SET NOT NULL;
diff --git a/src/test/regress/sql/sequence.sql b/src/test/regress/sql/sequence.sql
index c50834a5b97..a7b9e633728 100644
--- a/src/test/regress/sql/sequence.sql
+++ b/src/test/regress/sql/sequence.sql
@@ -246,6 +246,10 @@ WHERE sequencename ~ ANY(ARRAY['sequence_test', 'serialtest'])
SELECT * FROM pg_sequence_parameters('sequence_test4'::regclass);
+\d sequence_test4
+\d serialtest2_f2_seq
+
+
-- Test comments
COMMENT ON SEQUENCE asdf IS 'won''t work';
COMMENT ON SEQUENCE sequence_test2 IS 'will work';