Search Postgresql Archives

Re: simple update query too long

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Would it be faster if you create Partial Index on inter field (btree) where inter > 0

and then UPDATE grille SET inter = 0 WHERE inter > 0

Kind Regards,

Misa


2011/5/9 F T <oukile@xxxxxxxxx>
Hi list

I use PostgreSQL 8.4.4. (with Postgis 1.4)

I have a simple update query that takes hours to run.
The table is rather big (2 millions records) but it takes more than 5 hours to run !!

The query is just :
UPDATE grille SET inter = 0

The explain command seems ok :
"Seq Scan on grille50Â (cost=0.00..499813.56 rows=2125456 width=494)"

The table as a geometry field geom (simple, it only stores squares)
The table dÃfinition is :
CREATE TABLE grille50
(
 id integer NOT NULL,
 geom geometry,
 inter integer DEFAULT 0,
 oc1 integer,
 oc2 integer,
 occalc integer,
 CONSTRAINT grille_pkey PRIMARY KEY (id),
 CONSTRAINT enforce_dims_geom CHECK (st_ndims(geom) = 2),
 CONSTRAINT enforce_geotype_geom CHECK (geometrytype(geom) = 'POLYGON'::text OR geom IS NULL),
 CONSTRAINT enforce_srid_geom CHECK (st_srid(geom) = 2154)
)
WITH (
 OIDS=TRUE
);
ALTER TABLE grille OWNER TO postgres;
CREATE INDEX grille_geom ON grille USING gist (geom);
CREATE INDEX grille_id ON grille USING btree (id);



So any ideas why is it soo long???

Many thanks

Fabrice






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux