On Fri, Aug 28, 2015 at 10:11 AM Tom Lane <t...@sss.pgh.pa.us> wrote:

> Steve Kehlet <steve.keh...@gmail.com> writes:
> > This is Postgres 9.4.4. I am troubleshooting some occasional (every 3-4
> > hours) slowness with UPDATEs on a table that has a GIN index on a JSONB
> > column. During these episodes, UPDATEs that normally take < 1sec take
> > upwards of 2-4 minutes, and all finish simultaneously, like they were all
> > blocked on something and finally got released.
>
> Hm ... have you tried checking pg_locks to see if they're blocked on
> something identifiable?
>

Yes, I should have mentioned that, I have a cronjob going every minute
dumping out [blocked/blocking queries](
https://gist.github.com/skehlet/fbf5f52e18149e14e520) and nothing has shown
up related to these queries (there were some other normal unrelated
results, so I believe the job+query itself are working). After several
incidents I believe it would have logged something.


> You might be right that this is caused by flushing the GIN pending list,
> but I thought that that was not supposed to block concurrent insertions.
> What I'd expect to see is *one* insert taking significantly longer than
> normal, but no effect on concurrent operations.  Also, 2-4 minutes sounds
> much longer than should be needed to flush a 10MB pending list, anyway.


Yeah head scratch. That is really weird. Still gathering data, any way I
can see for sure when these cleanup cycles are occurring?

Reply via email to