From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | bruc(at)acm(dot)org |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: Apparent deadlock for simultaneous sequential scans |
Date: | 2001-06-08 21:51:38 |
Message-ID: | 12114.992037098@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
bruc(at)stone(dot)congenomics(dot)com (Robert E. Bruccoleri) writes:
> With two processors running the same query, it appears to be a
> slowdown. When I look at the system calls, the backends were
> executing about one read per second. With six processors running the
> same query, it appeared to be a deadlock -- no I/O's were being issued
> over the time that I watched.
It's hard to believe there's an actual deadlock here. You might be
looking at pathological inefficiency of the spinlock implementation,
but still it seems that someone somewhere must be getting some work
done. Can you determine which backend actually has the spinlock?
What's it doing?
Given that you mentioned you had a large number of shared buffers,
it might be that a background checkpoint process running BufferSync()
is part of the problem. It looks like BufferSync acquires the spinlock
separately for each buffer it examines, which would be kinda nasty in
the presence of heavy contention. OTOH we shouldn't really care if
BufferSync is slow.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | kyle | 2001-06-08 21:54:50 | where clause bug |
Previous Message | Tom Lane | 2001-06-08 19:29:41 | Re: SELECT on VIEW returns wrong result, Buffer Leak |