Package: postgresql
Version: 7.4.8

Summary: We have encountered a problem where a single row continually rolls 
back to a much older version of itself.

- row in question is:
CREATE TABLE infobase_version (control character varying NOT NULL);
COPY infobase_version (control) FROM stdin;
243
\.

update infobase_version set control = 243;
select * FROM infobase_version;
control ---------
    243
select * FROM infobase_version;
control ---------
    243
select * FROM infobase_version;
control ---------
    243
... etc for about 30 seconds ...
select * FROM infobase_version;
control ---------
    161

No one else is using the database. 161 was a value that was put into the row a LONG time ago. As far as we can figure it seems like postgres is continually rolling back a transaction which isn't taking place.

We've tried doing a vacuum, removing the table and re-adding it. Removing the row and re-adding it and the same procedure continually happens. The row is USUALLY written to using transactions and some large updates can be run on other tables in the same transaction. If the transaction fails the remaining updates are attempted anyway (which fail if something else before it failed - as per norm.) and then COMMIT is called at the very end.
When 'exporting' the data using pg_dump (just plain SQL, no --format=t) the 
table shows only ONE value in it so we know it's not a weird duplicate bug of 
some sort.

Our *guess* is that there might be some form of bad cache/rollback happening 
inside postgres



--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to