Re: [SQL] Few questions about my slow query - Mailing list pgsql-sql

From Tom Lane
Subject Re: [SQL] Few questions about my slow query
Date
Msg-id 25532.931963311@sss.pgh.pa.us
Whole thread Raw
In response to Few questions about my slow query  (webmaster <webmaster@tony.cz>)
List pgsql-sql
webmaster <webmaster@tony.cz> writes:
> Refs contains 80000 recs, temp_kat contains 5500 recs and all records from
> temp_kat have a matching key value in refs... When I need "mark" records in
> table refs (set the field exist for records existing also in temp_kat) I do
> following query:

> update refs set exist='true' where temp_kat.id_ref=refs.id_tit;

> This query takes a lot of time

Hmm.  Are the id fields unique, or are there duplicates?  If there were,
say, 10 records in temp_kat with the same ID, then the corresponding
records in refs would each get updated 10 times.

It would help to see what EXPLAIN says about this query.  Since you have
indexes, a merge join would probably be the best strategy, but we can't
tell what's actually being used.

> 2. Could I start postgres with some diff. options for ex. with the feature of
> delayed flushing? My pg is 6.4.2 and I saw here there is a possibility to

I think you should update to 6.5.  You might also want to start the
postmaster with "-o -F" to turn off fsync, but this assumes that you
have confidence in your OS, hardware, and power supply --- in the event
of a system crash, you have a greater risk of losing data with -F.
        regards, tom lane


pgsql-sql by date:

Previous
From: Jérome Knöbl
Date:
Subject: Prolem wiht long query?
Next
From: Tom Lane
Date:
Subject: Re: [SQL] Prolem wiht long query?