Re: 9.2beta1, parallel queries, ReleasePredicateLocks, CheckForSerializableConflictIn in the oprofile

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Merlin Moncure <mmoncure(at)gmail(dot)com>
Cc: Sergey Koposov <koposov(at)ast(dot)cam(dot)ac(dot)uk>, Jeff Janes <jeff(dot)janes(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org
Subject: Re: 9.2beta1, parallel queries, ReleasePredicateLocks, CheckForSerializableConflictIn in the oprofile
Date: 2012-05-26 13:44:12
Message-ID: CA+TgmobF7yfPFgke71Efadqgoz6dxwfv+GOLy+1MPEmkSyUVpQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, May 25, 2012 at 10:30 AM, Merlin Moncure <mmoncure(at)gmail(dot)com> wrote:
> I think what's happening here is that the buffer partitions don't help
> (in fact, they hurt) in the presence of multiple concurrent scans that
> are operating on approximately the same data.  Sooner or later the
> scans line up on each other and start binding when reassigning lock
> tags (which take out up to two ordered exclusive lwlocks). This is on
> the read side, so the buffer access strategy is zero help (I confirmed
> this off list).

This theory is seeming fairly plausible - how can we test it?

How about trying it with synchronize_seqscans = off? If the
synchronized-seqscan logic is causing contention on the buf mapping
locks and individual buffer locks, that should fix it.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Sergey Koposov 2012-05-26 14:09:29 Re: 9.2beta1, parallel queries, ReleasePredicateLocks, CheckForSerializableConflictIn in the oprofile
Previous Message Florian Pflug 2012-05-26 11:24:26 Re: Interrupting long external library calls