Re: Slow running query

Tom Lane <[email protected]> Wed, 11 Dec 2019 10:32:49 -0500
Newsgroups gmane.comp.db.postgresql.admin
Message-ID <[email protected]>
Shrikant Bhende <[email protected]> writes:
> Below is the query which is running very slow, can anyone suggest any
> improvement for the same to make it faster.

Not when you haven't given us any supporting data :-(.  There's some
advice about how to ask useful performance questions here:

https://wiki.postgresql.org/wiki/Slow_Query_Questions

However, just scanning your EXPLAIN output, it seems that the bulk
of the time is being spent inside two user-defined functions:

>                                              ->  Function Scan on get_nu=
m_connections f  (cost=3D0.25..10.25 rows=3D1000 width=3D24) (actual time=3D=
22331.461..22331.479 rows=3D263 loops=3D1)
...
>                                              ->  Function Scan on get_nu=
m_proprietary f_1  (cost=3D0.25..10.25 rows=3D1000 width=3D24) (actual tim=
e=3D4052.081..4052.085 rows=3D26 loops=3D1)
...
>  Planning time: 18.362 ms
>  Execution time: 33944.679 ms

ie, 26 of the 34 seconds are being spent there.  You're not going to be
able to move the needle very far unless you can make those a lot cheaper.

I notice that the first thing the plan does with these is FULL JOIN them
to each other, which seems suspiciously like a performance anti-pattern.

			regards, tom lane