Well, probably you are right, because PostgreSQL would shutdown
before a wraparound happens, and you would have noticed that.
I don't know how it happened, but your database has suffered
corruption. Any chance you can restore from a backup?
Can you still "SELECT *" from the table that has the problem?
I cannot run a full SELECT * on that table. It stops after a few minutes with the same error.
I am currently testing different things on a DB created from a backup like exporting per month/per day …
but I am running into this error again and again.
Running a VACUUM --FULL gives me: WARNING: concurrent delete in progress within table "the_bad_table" … then it also breaks.
BR,
Karl