I wrote: > Interestingly, it doesn't crash if I change the index type to btree, > which I was not expecting because the crashing code seems pretty > independent of the index type.
Oh ... duh. The problem here is that ProjIndexIsUnchanged thinks that the type of the index column is identical to the type of the source datum for it, which is not true for any opclass making use of the opckeytype property. Ondřej, as a short-term workaround you could prevent the crash by setting that index's recheck_on_update property to false. regards, tom lane