Después de una larga búsqueda, esto es lo que encontré:
De hecho, solo hay una columna que se puede confirmar con psql. Sin embargo, usando el comando pg_dump -st names <databasename>
de bash noté que se definían 2 secuencias asociadas con la columna de identificación:public.names_id_seq
y public.names_id_seq1
.
Esto también se puede confirmar ejecutando SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
de psql donde aparecen ambas secuencias.
Si uno intenta eliminar public.names_id_seq1
uno obtiene el error ERROR: cannot drop sequence apis_id_seq1 because column id of table apis requires it
.
La solución es eliminar la primera secuencia con DROP SEQUENCE names_id_seq;
Después de actualizar pgAdmin4, la segunda columna desapareció.
TL;RD
-
Ejecute
SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
e identificar secuencias duplicadas (es decir, aquellas en las que hay una versión con y otra sin 1 al final) -
Elimina la secuencia superflua con
DROP SEQUENCE <sequenceName_seq>;
(solo se puede eliminar el que no tiene un 1 al final) -
Actualizar pgAdmin4