From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Andrew Dunstan <andrew(at)dunslane(dot)net> |
Cc: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>, Joachim Wieland <joe(at)mcknight(dot)de>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: WIP patch for parallel pg_dump |
Date: | 2010-12-03 02:09:59 |
Message-ID: | 9536.1291342199@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Andrew Dunstan <andrew(at)dunslane(dot)net> writes:
> On 12/02/2010 05:32 PM, Tom Lane wrote:
>> (I'm not actually convinced that snapshot cloning is the only problem
>> here; locking could be an issue too, if there are concurrent processes
>> trying to take locks that will conflict with pg_dump's. But the
>> snapshot issue is definitely a showstopper.)
> Why is that more an issue with parallel pg_dump?
The scenario that bothers me is
1. pg_dump parent process AccessShareLocks everything to be dumped.
2. somebody else tries to acquire AccessExclusiveLock on table foo.
3. pg_dump child process is told to dump foo, tries to acquire
AccessShareLock.
Now, process 3 is blocked behind process 2 is blocked behind process 1
which is waiting for 3 to complete. Can you say "undetectable deadlock"?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2010-12-03 02:24:47 | Re: WIP patch for parallel pg_dump |
Previous Message | Robert Haas | 2010-12-03 01:59:04 | Re: WIP patch for parallel pg_dump |