Hi All, pg9.0.3 explain analyze running very slow compared to old box with much less configuration.
But actual query is performing much better than the old server. ============old Server=============== OS: CentOS release 5.4 (Final) Linux Server 2.6.18-164.6.1.el5 #1 SMP Tue Nov 3 16:12:36 EST 2009 x86_64 x86_64 x86_64 GNU/Linux RAM - 16GB CPU - 8 Core disk - 300GB RAID10 on the disk Postgresql 9.0.3 Postgres Config: shared_buffers = 6GB work_mem = 32MB maintenance_work_mem = 512MB effective_cache_size = 12GB #explain analyze select * from photo; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------- Seq Scan on photo (cost=0.00..8326849.24 rows=395405824 width=168) (actual time=5.632..157757.284 rows=395785382 loops=1) Total runtime: 187443.850 ms (2 rows) ============newServer=============== CentOS release 5.4 (Final) Linux Server 2.6.18-164.6.1.el5 #1 SMP Tue Nov 3 16:12:36 EST 2009 x86_64 x86_64 x86_64 GNU/Linux RAM - 64GB CPU - 12 Core disk - 1TB RAID10 on the disk Postgresql 9.0.3 Postgres Config: shared_buffers = 16GB work_mem = 32MB maintenance_work_mem = 1024MB effective_cache_size = 12GB # explain analyze select * from photo; QUERY PLAN ---------------------------------------------------------------------------------------------------------------------------- Seq Scan on photo (cost=0.00..8326810.24 rows=395579424 width=165) (actual time=0.051..316879.928 rows=395648020 loops=1) Total runtime: 605703.206 ms (2 rows) I read other articles about the same issue but could not find the exact solution. I ran gettimeofday() on both machines and got the below results: Results: *[Old Server]# time /tmp/gtod* real 0m0.915s user 0m0.914s sys 0m0.001s *[New Server]# time /tmp/gtod* real 0m7.542s user 0m7.540s sys 0m0.001s I am not sure how to fix this issue, any help would be in great assistance. Thanks Deepak