I wrote:
> Thread 0 Crashed:
> 0   postmaster  0x001af4ef smgrextend + 12 (smgr.c:485)
> 1   postmaster  0x00029044 end_heap_rewrite + 208 (rewriteheap.c:278)
> 2   postmaster  0x000bdc22 cluster_rel + 850 (cluster.c:806)
> 3   postmaster  0x000be119 cluster + 160 (cluster.c:220)

AFAICS, a crash inside smgrextend must indicate it was passed a junk
SMgrRelation, which implies that the problem has to trace back to
the new heap's rd_smgr getting closed since the rewriteheap operation
started.  I think the only possible path for that is an sinval queue
overflow and consequent SI reset during the test.  That would explain
why it's such an intermittent failure, but it is curious that Darwin
seems much more prone to this than other platforms.  I wonder if Apple
has tweaked the scheduler in a way that allows backends to not be given
any cycles for long periods ...

Anyway, patch committed; we'll see if things don't get more stable.

Memo to self: run some tests with CLOBBER_CACHE_ALWAYS after the
remaining major patches have landed.

                        regards, tom lane

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

Reply via email to