The following bug has been logged online:
Bug reference: 3668
Logged by: Eric Weimer
Email address: eweimer@thelocalphonecompany.net
PostgreSQL version: 8.1
Operating system: Linux
Description: type error in serial
Details:
Creating a table with a column of type serial causes the creation of a
sequence tied as the default value for the column.
The actual type of the column is integer, however the sequence created is of
type bigint. If the sequence is created as a bigint, then the column should
also be defined as bigint.
Example:
dev=# create temp table testing (id serial);
NOTICE: CREATE TABLE will create implicit sequence "testing_id_seq" for
serial column "testing.id"
CREATE TABLE
dev=# \d testing_id_seq
Sequence "pg_temp_1.testing_id_seq"
Column | Type
---------------+---------
sequence_name | name
last_value | bigint
increment_by | bigint
max_value | bigint
min_value | bigint
cache_value | bigint
log_cnt | bigint
is_cycled | boolean
is_called | boolean
dev=# \d testing
Table "pg_temp_1.testing"
Column | Type | Modifiers
--------+---------+------------------------------------------------------
id | integer | not null default nextval('testing_id_seq'::regclass)