Re: Update in trigger

From: Jan Wieck <janwieck(at)yahoo(dot)com>
To: "[Ikl_di] Lajos" <il(at)mithrandir(dot)hu>
Cc: Jan Wieck <janwieck(at)yahoo(dot)com>, "pgsql-sql(at)postgresql(dot)org" <pgsql-sql(at)postgresql(dot)org>, William Meloney <bmeloney(at)mindspring(dot)com>
Subject: Re: Update in trigger
Date: 2002-04-04 15:05:47
Message-ID: 200204041505.g34F5l807360@saturn.janwieck.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

[Ikl_di] Lajos wrote:
[Charset iso-8859-2 unsupported, filtering to ASCII...]
> Hi,
>
> Jan Wieck _rta:
>
> > Are there appropriate indexes on the table updated in the
> > trigger and is the database "VACUUM ANALYZE"ed so the indexes
> > get used?
>
> There is a primary key.
> VACUUM ANALYZE is really helpful, but only for a few minutes (3000 inserted
> records).
>
>
> William Meloney _rta:
>
> > Please forward a copy of the trigger. This is exactly the same thing I
> > am trying to do but I have not had any success.
>
> Here is the whole structure:
>
> [...]

That's a well known problem with PostgreSQL's non-overwriting
storage management system. After your 3000 INSERTs, you also
have UPDATEed szm 3000 times, leaving 3000 dead rows and 3000
dead index entries in it. Thus, another UPDATE looking for
kod=1 will find 3000 index entries and has to check 3000 data
rows only to find that they have to be ignored.

The only way I see at the time beeing is to vacuum tables
that have very few rows with a high update frequency "very
often". No need to vacuum the rest of the database at the
same rate, just these special tables.

Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck(at)Yahoo(dot)com #

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Kovacs Zoltan 2002-04-04 16:33:00 md5 auth
Previous Message Masaru Sugawara 2002-04-04 15:01:46 Re: FULL JOIN with 3 or more tables