From: Tom Lane <tgl@sss.pgh.pa.us>
To: Tatsuo Ishii <ishii@postgresql.org>
Cc: pgsql-performance@postgresql.org
Cc: pgsql-hackers@postgresql.org
Subject: Re: pg_dump and thousands of schemas
Date: Wed, 30 May 2012 23:54:30 -0400
Message-ID: <26386.1338436470@sss.pgh.pa.us> (raw)
In-Reply-To: <20120531.092043.1953698679173443322.t-ishii@sraoss.co.jp>
References: <20120529.185149.1127748531209576379.t-ishii@sraoss.co.jp>
<12147.1338306742@sss.pgh.pa.us>
<20120530.180620.600165924826262795.t-ishii@sraoss.co.jp>
<20120531.092043.1953698679173443322.t-ishii@sraoss.co.jp>
Tatsuo Ishii <ishii@postgresql.org> writes:
>> Ok, I modified the part of pg_dump where tremendous number of LOCK
>> TABLE are issued. I replace them with single LOCK TABLE with multiple
>> tables. With 100k tables LOCK statements took 13 minutes in total, now
>> it only takes 3 seconds. Comments?
> Shall I commit to master and all supported branches?
I'm not excited by this patch. It dodges the O(N^2) lock behavior for
the initial phase of acquiring the locks, but it does nothing for the
lock-related slowdown occurring in all pg_dump's subsequent commands.
I think we really need to get in the server-side fix that Jeff Janes is
working on, and then re-measure to see if something like this is still
worth the trouble. I am also a tad concerned about whether we might not
have problems with parsing memory usage, or some such, with thousands of
tables being listed in a single command.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-performance@postgresql.org
Cc: tgl@sss.pgh.pa.us, ishii@postgresql.org, pgsql-hackers@postgresql.org
Subject: Re: pg_dump and thousands of schemas
In-Reply-To: <26386.1338436470@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox