Christoph Berg <myon@debian.org> writes:
> *** 34,44 ****
> --- 34,47 ----
> CREATE SEQUENCE sequence_test7 AS bigint;
> CREATE SEQUENCE sequence_test8 AS integer MAXVALUE 100000;
> CREATE SEQUENCE sequence_test9 AS integer INCREMENT BY -1;
> + ERROR: MINVALUE (-9223372036854775808) is out of range for sequence data type integer
> CREATE SEQUENCE sequence_test10 AS integer MINVALUE -100000 START 1;
> CREATE SEQUENCE sequence_test11 AS smallint;
> CREATE SEQUENCE sequence_test12 AS smallint INCREMENT -1;
> + ERROR: MINVALUE (-9223372036854775808) is out of range for sequence data type smallint
> CREATE SEQUENCE sequence_test13 AS smallint MINVALUE -32768;
> CREATE SEQUENCE sequence_test14 AS smallint MAXVALUE 32767 INCREMENT -1;
> + ERROR: MINVALUE (-9223372036854775808) is out of range for sequence data type smallint
> CREATE SEQUENCE sequence_testx AS text;
> ERROR: sequence type must be smallint, integer, or bigint
> CREATE SEQUENCE sequence_testx AS nosuchtype;
Well, that's just wacko. Somehow sequence.c's init_params() must
be falling down on the job in selecting the right seqform->seqmin,
but I'm darned if I see anything that's either wrong or potentially
machine-dependent in that code. It almost looks like it must be
a compiler bug, though I hesitate to jump to that conclusion so
quickly. Peter, any ideas?
regards, tom lane