Re: "PANIC: could not open critical system index 2662" - twice

Evgeny Morozov <postgresql3@realityexists.net>

From: Evgeny Morozov <postgresql3@realityexists.net>
To: Kirk Wolak <wolakk@gmail.com>, Thomas Munro <thomas.munro@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL General <pgsql-general@postgresql.org>
Date: 2023-05-10T13:32:16Z
Lists: pgsql-general
On 10/05/2023 6:39 am, Kirk Wolak wrote:
> It could be as simple as creating temp tables in the other database
> (since I believe pg_class was hit).
We do indeed create temp tables, both in other databases and in the ones
being tested. (We also create non-temp tables there.)
>
> Also, not sure if the OP has a set of things done after he creates the
> DB that may help?

Basically we read rows from the source database, create some partitions
of tables in the target database, insert into a temp table there using
BULK COPY, then using a regular INSERT copy from the temp tables to the
new partitions.


Now that the probem has been reproduced and understood by the PG
developers, could anyone explain why PG crashed entirely with the
"PANIC" error back in April when only specific databases were corrupted,
not any global objects necesary for PG to run? And why did it not crash
with the "PANIC" on this occasion?

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Handle DROP DATABASE getting interrupted

  2. Remove the restriction that the relmap must be 512 bytes.