Обсуждение: HEAP_MOVED_IN or HEAP_MOVED_OFF?

Поиск
Список
Период
Сортировка

HEAP_MOVED_IN or HEAP_MOVED_OFF?

От
Tatsuo Ishii
Дата:
Hi,

While implementing DROP CONVERSION [CASCADE|RESTRICT], I'm facing
a strange problem. When I tries to delete a tuple from pg_depened, I
got an assertion failure:

TRAP: Failed Assertion("!(!((tp.t_data)->t_infomask & (0x4000 |
0x8000))):", File: "heapam.c", Line: 1315)

This means that HEAP_MOVED_IN or HEAP_MOVED_OFF flag is set. Is this
normal? I noticed that DELETE, INSERT and VACUUM FULL has been
performed over pg_depend in initdb. Is this related to the problem?
--
Tatsuo Ishii


Re: HEAP_MOVED_IN or HEAP_MOVED_OFF?

От
Tom Lane
Дата:
Tatsuo Ishii <t-ishii@sra.co.jp> writes:
> While implementing DROP CONVERSION [CASCADE|RESTRICT], I'm facing
> a strange problem. When I tries to delete a tuple from pg_depened, I
> got an assertion failure:

This is the bug I complained of in Manfred's HeapTupleHeader patches.
He's sent in a patch (not yet reviewed or applied) to fix it.  In the
meantime, I'd counsel avoiding VACUUM FULL.
        regards, tom lane


Re: HEAP_MOVED_IN or HEAP_MOVED_OFF?

От
Manfred Koizar
Дата:
On Thu, 18 Jul 2002 23:05:05 +0900 (JST), Tatsuo Ishii
<t-ishii@sra.co.jp> wrote:
>TRAP: Failed Assertion("!(!((tp.t_data)->t_infomask & (0x4000 |
>0x8000))):", File: "heapam.c", Line: 1315)

Tatsuo, this is unrelated to *your* work.  It is a bug introduced with
my heap tuple header changes.  Tom Lane has reported this bug  three
days ago: "[HACKERS] HeapTuple header changes cause core dumps in CVS
tip".

A workaround has been posted in reply to this message.  And a (IMHO)
better fix is waiting on -patches, making the workaround obsolete.  If
you try the fix:  any feedback is very appreciated.

ServusManfred