SERIAL as colunas são armazenadas como INTEGER s, dando-lhes um valor máximo de 2-1. Então, após cerca de 2 bilhões de inserções, seu novo id os valores não cabem mais. Se você espera tantas inserções durante a vida útil da sua tabela, crie-a com um
BIGSERIAL (internamente um BIGINT , com um máximo de 2-1). Se você descobrir mais tarde que um
SERIAL não for grande o suficiente, você pode aumentar o tamanho de um campo existente com:ALTER TABLE raw ALTER COLUMN id TYPE BIGINT;
Observe que é
BIGINT aqui, em vez de BIGSERIAL (como serials não são tipos reais ). E lembre-se de que, se você realmente tiver 2 bilhões de registros em sua tabela, isso pode demorar um pouco...