> > Assuming the above matches: > > COPY public.file (fileid, fileindex, jobid, pathid, filenameid, > deltaseq, markid, lstat, md5) > > the '????????????????????' would be for the md5 field. I'm going to say > that is important. > > > But that would be content of the database only. The should matter for > the application but not for a dump of the database, right?
Also what does:
\d public.file
show?
In particular are there any triggers on the table?
bacula=# \d public.file Table "public.file" Column | Type | Collation | Nullable | Default ------------+----------+-----------+----------+-------------------------------------- fileid | bigint | | not null | nextval('file_fileid_seq'::regclass) fileindex | integer | | not null | 0 jobid | integer | | not null | pathid | integer | | not null | filenameid | integer | | not null | deltaseq | smallint | | not null | 0 markid | integer | | not null | 0 lstat | text | | not null | md5 | text | | not null | Indexes: "file_pkey" PRIMARY KEY, btree (fileid) "file_jobid_idx" btree (jobid) "file_jpfid_idx" btree (jobid, pathid, filenameid)
Following up on the max(bigint), I tried
SELECT md5 FROM public.file where fileid >2087994666;
and got
ERROR: compressed data is corrupted
So it does look like those entries are killing it. Now for the million-dollar question: how do I get them out?