Re: Question: update and transaction isolation

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: mlw <markw(at)mohawksoft(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Question: update and transaction isolation
Date: 2002-04-03 17:41:09
Message-ID: Pine.LNX.4.30.0204031232170.684-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

mlw writes:

> For each page hit, I do this:
>
> update pagecounts set counter = counter + 1 where pagename = 'testpag.php'
>
> Do I have to set a particular isolation level? Or does this not work in
> general?

In read committed level, if the second update launches before the first
update is finished (commits), then both of these updates will operate on
the old counter value. That is, you miss one page hit.

If it's possible, you might want to consider "logging" your page hits and
make a view for the page counts (with group by, etc.). That will get you
around the concurrency issues altogether.

--
Peter Eisentraut peter_e(at)gmx(dot)net

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2002-04-03 17:46:15 Re: Locale support is now on by default
Previous Message Tom Lane 2002-04-03 17:38:06 Re: Suggestions please: names for function cachabilityattributes