Re: Regarding query optimisation (select for update)

From: Durgamahesh Manne <maheshpostgres9(at)gmail(dot)com>
To: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
Cc: pgsql-general <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Regarding query optimisation (select for update)
Date: 2025-07-15 12:56:34
Message-ID: CAJCZkoLJ6G9J3iK591o35UaKu3x7Kn96ma-u_yqGNgkrLjf6ag@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, Jul 15, 2025 at 6:14 PM Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
wrote:

> On Tue, 2025-07-15 at 15:40 +0530, Durgamahesh Manne wrote:
> > We are facing issues with slow running query
> > SELECT betid, versionid, betdata, processed, messagetime, createdat,
> updatedat
> > FROM praermabetdata where processed = 'false'
> > ORDER BY betid, versionid LIMIT 200 OFFSET 0 FOR UPDATE;
> >
> > QUERY PLAN
> >
> --------------------------------------------------------------------------------------------------------------------------------
> > Limit (cost=0.28..1.89 rows=1 width=78)
> > -> LockRows (cost=0.28..1.89 rows=1 width=78)
> > -> Index Scan using
> idx_praermabetdata_processed_betid_versionid on praermabetdata
> (cost=0.28..1.88 rows=1 width=78)
> > Index Cond: (processed = false)
> >
> > image.png
> >
> > Do we have any alternative way to improve the performance?
> > Sometimes processed column use true as well as false
>
> Please provide EXPLAIN (ANALYZE, BUFFERS) output and use "log_lock_waits"
> to see if you are hanging behind locks for a longer time.
>
> Yours,
> Laurenz Albe
>
Hi Team

[image: image.png]

I can use log_lock_waits to check further information

Regards,
Durga Mahesh

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andy Huang 2025-07-15 13:05:52 Re: Regarding query optimisation (select for update)
Previous Message Laurenz Albe 2025-07-15 12:43:59 Re: Regarding query optimisation (select for update)