Re: old_snapshot_threshold vs indexes

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>, Kevin Grittner <kgrittn(at)gmail(dot)com>
Subject: Re: old_snapshot_threshold vs indexes
Date: 2019-08-28 09:02:37
Message-ID: CA+hUKGL_LhcLuobRd1e9f3RDpwwbvHh_8uYOmhCmF1Uc1V98AQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Aug 28, 2019 at 3:05 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> I'd vote for back-patching to 10. Even if there is in fact no deadlock
> hazard, you've clearly demonstrated a significant performance hit that
> we're taking for basically no reason.

Done.

The second symptom reported in my first email looked like evidence of
high levels of spinlock backoff, which I guess might have been coming
from TransactionIdLimitedForOldSnapshots()'s hammering of
oldSnapshotControl->mutex_threshold and
oldSnapshotControl->mutex_threshold, when running
heap_page_prune_opt()-heavy workloads like the one generated by
test-indexscan.sql (from my earlier message) from many backends at the
same time on a large system. That's just an observation I'm leaving
here, I'm not planning to chase that any further for now.

--
Thomas Munro
https://enterprisedb.com

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2019-08-28 09:22:17 Crash in BRIN summarization
Previous Message Alexander Kukushkin 2019-08-28 08:38:39 Re: Statement timeout in pg_rewind