pgsql: In pg_dump, use simplehash.h to look up dumpable objects by OID. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: In pg_dump, use simplehash.h to look up dumpable objects by OID.
Date
Msg-id E1me1wm-0003K2-3P@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
In pg_dump, use simplehash.h to look up dumpable objects by OID.

Create a hash table that indexes dumpable objects by CatalogId
(that is, catalog OID + object OID).  Use this to replace the
former catalogIdMap array, as well as various other single-
catalog index arrays, and also the extension membership map.

In principle this should be faster for databases with many objects,
since lookups are now O(1) not O(log N).  However, it seems that these
lookups are pretty much negligible in context, so that no overall
performance change can be measured.  But having only one lookup
data structure to maintain makes the code simpler and more flexible,
so let's do it anyway.

Discussion: https://postgr.es/m/2595220.1634855245@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/92316a4582a5714d4e494aaf90360860e7fec37a

Modified Files
--------------
src/bin/pg_dump/common.c    | 510 ++++++++++++++++++--------------------------
src/bin/pg_dump/pg_backup.h |   1 +
src/bin/pg_dump/pg_dump.c   |  14 +-
src/bin/pg_dump/pg_dump.h   |  12 +-
4 files changed, 209 insertions(+), 328 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix frontend version of sh_error() in simplehash.h.
Next
From: Michael Paquier
Date:
Subject: pgsql: doc: Describe calculation method of streaming start for pg_recei