On Fri, Jul 29, 2022 at 7:00 AM Dilip Kumar <dilipbalaut@gmail.com> wrote:
> @ -3167,15 +3168,36 @@ dumpDatabase(Archive *fout)
>
> ....
> appendPQExpBuffer(loOutQry, "UPDATE pg_catalog.pg_class\n"
> - "SET relfrozenxid = '%u', relminmxid = '%u', relfilenode = '%u'\n"
> + "SET relfrozenxid = '%u', relminmxid = '%u'\n"
> "WHERE oid = %u;\n",
> atooid(PQgetvalue(lo_res, i, i_relfrozenxid)),
> atooid(PQgetvalue(lo_res, i, i_relminmxid)),
> - atooid(PQgetvalue(lo_res, i, i_relfilenode)),
> - atooid(PQgetvalue(lo_res, i, i_oid)));
> + atooid(PQgetvalue(lo_res, i, i_relfilenode)));
>
> Is this correct? I mean why are we updating only those tuples where
> oid= i_relfilenode? I think it should use
> atooid(PQgetvalue(lo_res, i, i_oid) in where clause not
> atooid(PQgetvalue(lo_res, i, i_relfilenode)? Or am I missing
> something?
No, that's definitely not correct. Thanks for catching it.
--
Robert Haas
EDB: http://www.enterprisedb.com