RE: View taking time to show records - Mailing list pgsql-performance

From Kumar, Mukesh
Subject RE: View taking time to show records
Date
Msg-id CH0P221MB0474CF7EA6C4767FD11B707EDE1A9@CH0P221MB0474.NAMP221.PROD.OUTLOOK.COM
Whole thread Raw
In response to Re: View taking time to show records  (Laurenz Albe <laurenz.albe@cybertec.at>)
List pgsql-performance
Hi Albe , 

Thanks for the below suggestion , When I ran the query with the parameter , it is taking only 1 sec.

So could you please let me know if I can put this parameter to OFF . at database and it will not create any issues to
queriesrunning in database.
 
 
Could you please share some light on it.

Thanks and Regards, 
Mukesh Kumar

-----Original Message-----
From: Laurenz Albe <laurenz.albe@cybertec.at> 
Sent: Friday, March 25, 2022 4:13 PM
To: Kumar, Mukesh <MKumar@peabodyenergy.com>; pgsql-performance@postgresql.org
Subject: Re: View taking time to show records

On Thu, 2022-03-24 at 15:59 +0000, Kumar, Mukesh wrote:
> We have recently migrated from Oracle to PostgreSQL on version 11.4 on azure postgres PaaS instance.
>  
> There is 1 query which is taking approx. 10 secs in Oracle and when we 
> ran the same query it is taking approx. 1 min
>  
> Can anyone suggest to improve the query as from application end 1 min time is not accepted by client.
>  
> Please find the query and explain analyze report from below link
>  
> https://urldefense.com/v3/__https://explain.depesz.com/s/RLJn*stats__;
> Iw!!KupS4sW4BlfImQPd!Ln-8-n9OcKKifiwKjYcs_JOUo80VTTp5hA9V_-gYjOfDr3DDm
> psmbIY_MQxw5RwQ2ZQtMlobbmvex2CIaJtISv0ZkaSn5w$

I would split the query in two parts: the one from line 3 to line 49 of your execution plan, and the rest.  The problem
isthe bad estimate of that first part, so execute only that, write the result to a temporary table and ANALYZE that.
Thenexecute the rest of the query using that temporary table.
 

Perhaps it is also enough to blindly disable nested loop joins for the whole query, rather than doing the right thing
andfixing the estimates:
 

BEGIN;
SET LOCAL enable_nestloop = off;
SELECT ...;
COMMIT;

Yours,
Laurenz Albe
--
Cybertec |
https://urldefense.com/v3/__https://www.cybertec-postgresql.com__;!!KupS4sW4BlfImQPd!Ln-8-n9OcKKifiwKjYcs_JOUo80VTTp5hA9V_-gYjOfDr3DDmpsmbIY_MQxw5RwQ2ZQtMlobbmvex2CIaJtISv1qNNoktA$



pgsql-performance by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: View taking time to show records
Next
From: Laurenz Albe
Date:
Subject: Re: View taking time to show records