1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
|
# name: test/sql/catalog/sequence/sequence_overflow.test
# description: Issue #2678: overflow in sequences
# group: [sequence]
statement ok
create sequence seq1 INCREMENT BY 1 MINVALUE 9223372036854775800 MAXVALUE 9223372036854775807 CYCLE;
query I
SELECT nextval('seq1') from generate_series(0,20);
----
9223372036854775800
9223372036854775801
9223372036854775802
9223372036854775803
9223372036854775804
9223372036854775805
9223372036854775806
9223372036854775807
9223372036854775800
9223372036854775801
9223372036854775802
9223372036854775803
9223372036854775804
9223372036854775805
9223372036854775806
9223372036854775807
9223372036854775800
9223372036854775801
9223372036854775802
9223372036854775803
9223372036854775804
statement ok
create sequence seq2 INCREMENT BY -1 MINVALUE -9223372036854775808 MAXVALUE -9223372036854775800 CYCLE;
query I
SELECT nextval('seq2') from generate_series(0,20);
----
-9223372036854775800
-9223372036854775801
-9223372036854775802
-9223372036854775803
-9223372036854775804
-9223372036854775805
-9223372036854775806
-9223372036854775807
-9223372036854775808
-9223372036854775800
-9223372036854775801
-9223372036854775802
-9223372036854775803
-9223372036854775804
-9223372036854775805
-9223372036854775806
-9223372036854775807
-9223372036854775808
-9223372036854775800
-9223372036854775801
-9223372036854775802
statement ok
create sequence seq3 INCREMENT BY 1 MINVALUE 9223372036854775800 MAXVALUE 9223372036854775807;
statement error
SELECT nextval('seq3') from generate_series(0,20);
----
<REGEX>:.*Sequence Error.*reached maximum value of sequence.*
statement ok
create sequence seq4 INCREMENT BY -1 MINVALUE -9223372036854775808 MAXVALUE -9223372036854775800;
statement error
SELECT nextval('seq4') from generate_series(0,20);
----
<REGEX>:.*Sequence Error.*reached minimum value of sequence.*
statement ok
create sequence seq5 INCREMENT BY 9223372036854775807 MINVALUE 9223372036854775800 MAXVALUE 9223372036854775807 CYCLE;
query I
SELECT nextval('seq5') from generate_series(0,20);
----
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
9223372036854775800
statement ok
create sequence seq6 INCREMENT BY 9223372036854775807 MINVALUE 9223372036854775800 MAXVALUE 9223372036854775807;
statement error
SELECT nextval('seq6') from generate_series(0,20);
----
<REGEX>:.*Sequence Error.*reached maximum value of sequence.*
statement ok
create sequence seq7 INCREMENT BY -9223372036854775808 MINVALUE -9223372036854775808 MAXVALUE -9223372036854775800;
statement error
SELECT nextval('seq7') from generate_series(0,20);
----
<REGEX>:.*Sequence Error.*reached minimum value of sequence.*
|