Search Postgresql Archives

Re: Comparing txid_current() to xmin

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

 



Mike Lewis escribió:
> I am trying to make a trigger that updates a row once and only once per
> transaction (even if this trigger gets fired multiple times).  The general
> idea is that for a user we have a version number.  When we modify the
> user's data, the version number is incremented then set on the object.  We
> only need to increment the version number once.
> 
> I am thinking about doing something like:
> 
> update user
> set version=version+1
> where txid_current() != xmin and user_id = 352395;

Uh, txid_current returns a 64 bit value, whereas xmin only stores the 32
least significant bits.  They would certainly differ after a xid
wraparound.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general



[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