I have two machines - one with 8GB RAM & 4core CPU and the other with 64GB Ram & 24 core CPU. Both machines have the same DB (Postgres 12 + Postgis 2.5.3). Same query is taking less time in low end machine whereas more time in high end machine. Any thoughts on where to look? I have tuned the db in both machines according to https://pgtune.leopard.in.ua/#/
Below I am pasting the output of query explain in both the machines.
-bash-4.2$ psql -p 5434 psql (12.3) Type "help" for help.
postgres=# \c IPDS_KSEB; You are now connected to database "IPDS_KSEB" as user "postgres". IPDS_KSEB=# explain analyze select * from kseb_geometry_trace_with_barrier_partition(5,'kottarakara_version',437,'htline',2) ; QUERY PLAN --------------------------------------------------------------------------------------------------------------------------------------------------------- Function Scan on kseb_geometry_trace_with_barrier_partition (cost=0.25..10.25 rows=1000 width=169) (actual time=11626.548..11626.568 rows=254 loops=1) Planning Time: 0.212 ms Execution Time: 11628.590 ms
-bash-4.2$ psql -p 5422 psql (12.3) Type "help" for help.
postgres=# \c IPDS_KSEB; You are now connected to database "IPDS_KSEB" as user "postgres". IPDS_KSEB=# explain analyze select * from kseb_geometry_trace_with_barrier_partition(5,'kottarakara_version',437,'htline',2) ; QUERY PLAN --------------------------------------------------------------------------------------------------------------------------------------------------------- Function Scan on kseb_geometry_trace_with_barrier_partition (cost=0.25..10.25 rows=1000 width=169) (actual time=22304.425..22304.448 rows=254 loops=1) Planning Time: 0.219 ms Execution Time: 22352.219 ms (3 rows)