Re: Tracking row updates - race condition - Mailing list pgsql-general

From Harald Fuchs
Subject Re: Tracking row updates - race condition
Date
Msg-id puwts03801.fsf@srv.protecting.net
Whole thread Raw
In response to Tracking row updates - race condition  (Alex Adriaanse <alex@alexandcarmen.com>)
Responses Re: Tracking row updates - race condition
List pgsql-general
In article <423F09CF.2030008@alexandcarmen.com>,
Alex Adriaanse <alex@alexandcarmen.com> writes:

> I think that would greatly decrease the chances of a race condition
> occurring, but I don't think it'd solve it.  What if 150 other
> revisions occur between a row update and its corresponding commit?

How about the following:

* Use a TIMESTAMP rather than a SERIAL
* Set this timestamp to NULL in your INSERT/UPDATE trigger
* Use a cron job to set the timestamp to current_timestamp when it's NULL

This way the client would lag behind somewhat, depending on the cron
job frequency, but it should not miss a change.

pgsql-general by date:

Previous
From: "Justin L. Kennedy"
Date:
Subject: Re: Tsearch vector not stored by update/set
Next
From: "Andrew J. Kopciuch"
Date:
Subject: Re: Tsearch vector not stored by update/set