Re: Comparing txid_current() to xmin

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: Comparing txid_current() to xmin
Дата
Msg-id 20121107021018.GB6348@alvh.no-ip.org
обсуждение исходный текст
Ответ на Comparing txid_current() to xmin  (Mike Lewis <mikelikespie@gmail.com>)
Ответы Re: Comparing txid_current() to xmin  (Mike Lewis <mikelikespie@gmail.com>)
Список pgsql-general
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


В списке pgsql-general по дате отправления:

Предыдущее
От: Craig Ringer
Дата:
Сообщение: Re: Tuning / performance questions
Следующее
От: Mike Lewis
Дата:
Сообщение: Re: Comparing txid_current() to xmin