Re: Understanding recovery conflict due to bufferpin

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: vinay kumar <vnykmr36(at)gmail(dot)com>, pgsql-novice(at)lists(dot)postgresql(dot)org
Subject: Re: Understanding recovery conflict due to bufferpin
Date: 2021-03-17 12:41:47
Message-ID: 4ac7f69b5881b8fe67c15f4f62f979839dd886f6.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

On Wed, 2021-03-17 at 10:14 +0530, vinay kumar wrote:
> Need some understanding regarding recovery conflict due to buffer pin.
>
> We see "User was holding shared buffer pin for too long" .
>
> I understand that this can be due to holding lock to update content of a db block or page.
>
> 1> Is the lock held on a buffer page or page at disk level?

A buffer page. And it is not a lock, it is a pin

> 2> Is there any serialization present to maintain the locking mechanism?

I don't quite understand - what you observe *is* the serialization
of access.

See this blog for some details:
https://www.cybertec-postgresql.com/en/streaming-replication-conflicts-in-postgresql/

Yours,
Laurenz Albe

In response to

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Simon Connah 2021-03-19 08:37:48 Is it better keep most logic in the database or the Node.js application?
Previous Message vinay kumar 2021-03-17 04:44:34 Understanding recovery conflict due to bufferpin