A surrogate key has been introduced on a table with modifiers:
Column | Type | Modifiers -------------+-----------------------------+------------------------------------------------------------ new_id | integer | not null default nextval(('some_id_seq'::text)::regclass)
However, some legacy software inserts into the table by first getting column names and then composing an INSERT for all the columns, filling in any undefined values with NULLs.
Thus when it attempts to insert a row I get a:
ERROR: null value in column "new_id" violates not-null constraint
To fix this, you need to do something like:
SELECT setval('public.fdata _fid_seq', max(fid)+1) FROM fdata; This will make sure that the next value your sequence generates is greater than any key that already exists in the table.