> There is, I believe, a problem there; there is a scenario where data
> can get "dropped out from under" those old connections.
> 
> This has been added to the TODO...
> 
> http://www.postgresql.org/docs/faqs.TODO.html
> 
> * Make CLUSTER preserve recently-dead tuples per MVCC requirements

OK, I can see this being a problem in the general case. 

However, for my queue table the current behavior is a life-saver. Would
it be possible to still provide a variant of rebuild which is documented
to not be MVCC compliant ? Something like: I don't care the old
transactions which did not touch yet this table to see the old data for
this table, I want to rebuild it. 

I actually don't care about clustering in this case, only about
rebuilding the table once I can get an exclusive lock on it. I guess
this would be possible with the "switch to a copy" method except the new
table is a different entity (as mentioned in another post) and it will
not preserve the dependencies of the original table.

I guess what I'm asking for is a kind of "REBUILD TABLE" which is not
MVCC by definition but it would be useful in the mentioned queue table
case.

Cheers,
Csaba.



---------------------------(end of broadcast)---------------------------
TIP 2: Don't 'kill -9' the postmaster

Reply via email to