Hi List !

I have a performance problem, but I am not sure whether it really
is a problem or not.
I am running a fresh install of PostgreSQL 8.1.4 on Windows2000.
The server is a bi-opteron with 2GB of RAM. The PostgreSQL's data
folder is on a RAID-0 array of 2 SATA WD Raptor drives (10.000
rpm, 8MB cache).

I have a very simple table, with only ~500 rows :
CREATE TABLE table1
(
   gid int4 NOT NULL DEFAULT 0,
   field1 varchar(45) NOT NULL,
   field2 int2 NOT NULL DEFAULT 1,
   field3 int2 NOT NULL DEFAULT 0,
   field4 int2 NOT NULL DEFAULT 1,
   field5 int4 NOT NULL DEFAULT -1,
   field6 int4,
   field7 int4,
   field8 int4,
   field9 int2 DEFAULT 1,
   CONSTRAINT table1_pkey PRIMARY KEY (gid)
)
WITHOUT OIDS;

The problem is that simple select queries with the primary key in the WHERE statement take very long to run.
For example, this query returns only 7 rows and takes about 1
second to run !
SELECT * FROM table1 WHERE gid in (33,110,65,84,92,94,13,7,68,41);

EXPLAIN ANALYZE SELECT * FROM table1 WHERE gid in
(33,110,65,84,92,94,13,7,68,41);

      QUERY PLAN
------------------------------------------------------------------------------------------------------------------------------------------------------
  Seq Scan on table1  (cost=0.00..23.69 rows=10 width=35) (actual
time=0.023..0.734 rows=7 loops=1)
    Filter: ((gid = 33) OR (gid = 110) OR (gid = 65) OR (gid = 84)
OR (gid = 92) OR (gid = 94) OR (gid = 13) OR (gid = 7) OR (gid =
68) OR (gid = 41))
  Total runtime: 0.801 ms
(3 rows)

I have run "VACUUM FULL" on this table many times... I don't know
what to try next !
What is wrong here (because I hope that something is wrong) ?
Thanks a lot for your help !

Regards
--
Arnaud


---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
      choose an index scan if your joining column's datatypes do not
      match

Reply via email to