From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Christian Ohler <ohler(at)shift(dot)com> |
Cc: | Alex Ignatov <a(dot)ignatov(at)postgrespro(dot)ru>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Detecting if current transaction is modifying the database |
Date: | 2016-08-05 20:24:40 |
Message-ID: | 24224.1470428680@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Christian Ohler <ohler(at)shift(dot)com> writes:
> Thanks, fair point. I should have mentioned that I know about triggers but
> was hoping to find a less invasive mechanism (IIUC, I'd have to install a
> trigger on every table) it seems to me that Postgres should just be able
> to tell me whether COMMIT will do anything, it obviously has to track that
> somehow (or some approximation of it).
You could check to see if the current transaction has had an XID assigned,
or if it's emitted any WAL records. There are already tests for those
sorts of conditions in various places, though I do not think they're
exposed at the SQL level.
> Another thing I should have mentioned is that I don't consider incrementing
> a sequence to be a modification.
Things might not work the way you want on that...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Rob Sargent | 2016-08-05 20:26:50 | Re: Detecting if current transaction is modifying the database |
Previous Message | Christian Ohler | 2016-08-05 20:15:39 | Re: Detecting if current transaction is modifying the database |