From e4216c5e872174175e94d9117d9a7a06e81c65ff Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Wed, 1 Apr 2009 18:54:27 +0000 Subject: [PATCH] Improve pg_dump's query for retrieving BLOB comments to be more efficient when there are many blobs and not so many comments. Tamas Vincze --- src/bin/pg_dump/pg_dump.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c index e4ea6eefa0..29335264c0 100644 --- a/src/bin/pg_dump/pg_dump.c +++ b/src/bin/pg_dump/pg_dump.c @@ -1995,7 +1995,13 @@ dumpBlobComments(Archive *AH, void *arg) selectSourceSchema("pg_catalog"); /* Cursor to get all BLOB comments */ - if (AH->remoteVersion >= 70200) + if (AH->remoteVersion >= 70300) + blobQry = "DECLARE blobcmt CURSOR FOR SELECT loid, " + "obj_description(loid, 'pg_largeobject') " + "FROM (SELECT DISTINCT loid FROM " + "pg_description d JOIN pg_largeobject l ON (objoid = loid) " + "WHERE classoid = 'pg_largeobject'::regclass) ss"; + else if (AH->remoteVersion >= 70200) blobQry = "DECLARE blobcmt CURSOR FOR SELECT loid, " "obj_description(loid, 'pg_largeobject') " "FROM (SELECT DISTINCT loid FROM pg_largeobject) ss"; -- 2.39.5