Po dlouhém hledání jsem našel zde:
Ve skutečnosti existuje pouze jeden sloupec, který lze potvrdit pomocí psql. Nicméně pomocí příkazu pg_dump -st names <databasename>
z bash jsem si všiml, že byly definovány 2 sekvence spojené se sloupcem id:public.names_id_seq
a public.names_id_seq1
.
To lze také potvrdit spuštěním SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
z psql, kde se zobrazují obě sekvence.
Pokud se někdo pokusí odstranit public.names_id_seq1
jeden dostane chybu ERROR: cannot drop sequence apis_id_seq1 because column id of table apis requires it
.
řešení je odstranit první sekvenci pomocí DROP SEQUENCE names_id_seq;
Po obnovení pgAdmin4 byl druhý sloupec pryč.
TL;DR
-
Spusťte
SELECT c.relname FROM pg_class c WHERE c.relkind = 'S';
a identifikovat duplicitní sekvence (tj. ty, kde je verze s a jedna bez 1 na konci) -
Odstraňte nadbytečnou sekvenci pomocí
DROP SEQUENCE <sequenceName_seq>;
(smazat lze pouze ten, který nemá na konci 1) -
Obnovte pgAdmin4