Re: Guideline To Resolve LWLock:SubtransControlLock - Mailing list pgsql-performance

From Alvaro Herrera
Subject Re: Guideline To Resolve LWLock:SubtransControlLock
Date
Msg-id 20180816183632.lo34je5dudbros4a@alvherre.pgsql
Whole thread Raw
In response to Guideline To Resolve LWLock:SubtransControlLock  (Fred Habash <fmhabash@gmail.com>)
Responses Re: Guideline To Resolve LWLock:SubtransControlLock  (Fred Habash <fmhabash@gmail.com>)
List pgsql-performance
On 2018-Aug-16, Fred Habash wrote:

> One of our database API's is run concurrently by near 40 sessions. We see
> all of them waiting back and forth on this wait state.

What version are you running?

> Why is it called Subtrans Control Lock?

It controls access to the pg_subtrans structure, which is used to record
parent/child transaction relationships (as you say, savepoints and
EXCEPTIONs in plpgsql are the most common uses, but not the only ones).
Normally lookup of these is optimized away, but once you cross a
threshold it cannot any longer.

> What are the common user session scenarios causing this wait?
>   - I have read some describe the use of SQL savepoints or PL/pgSQL
> exception handling.
> What are known resolution measures?

Are you in a position to recompile Postgres?

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services


pgsql-performance by date:

Previous
From: Fred Habash
Date:
Subject: Guideline To Resolve LWLock:SubtransControlLock
Next
From: Alexis Lê-Quôc
Date:
Subject: Re: Bi-modal streaming replication throughput