But if that theory is correct, this isn't a new > problem in 9.1, it goes back to 8.3. Have you been running this script > successfully on older versions? >
On 9.0. Though... now that I think about it, I found a bug with the script itself (I was braindead when I wrote the commandline parser and -pvx did not mean -p -v -x) that was causing it to not always wrap files in transaction blocks when it was told to, so it is *possible* 9.0 would be likewise affected... since the problem only is visible when the index is touched in the same transaction. I don't have the means to test against it right now, however. > > I'm not sure how much we can do to fix this without abandoning the HOT > optimization, which seems unlikely to go over well. We can certainly > get it to produce a more helpful error message, and we could very likely > avoid the failure in more cases than we do now, but in the end it > remains the case that a newly-built index isn't necessarily usable right > away, and CLUSTER requires the index to be usable --- else you might > lose some rows. > > regards, tom lane >