Alvaro Herrera wrote:
> I wrote an identical patch on Saturday and watched it pass
> CLOBBER_CACHE_ALWAYS test on Sunday. But the reason I didn't push is I
> couldn't understand *why* is there a problem here. I imagine that the
> source of the issue is supposed to be a relcache invalidation that takes
> place (in the original code) after reindex_index changes relpersistence,
> and before RelationSetNewRelfilenode() creates the filenode. But at
> what point does that code absorb invalidation messages? Or is there a
> completely different mechanism that causes the problem? If so, what?
Ah, it's the anti-collision stuff in GetNewOid(), isn't it.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services