Re: backend crash
От | Thomas Munro |
---|---|
Тема | Re: backend crash |
Дата | |
Msg-id | CA+hUKGJ=vSGortN9NYPRXJxyxVqMw2WhL3Qvn=kLecMAax5U8A@mail.gmail.com обсуждение исходный текст |
Ответ на | backend crash (kjonca@fastmail.com (Kamil Jońca)) |
Список | pgsql-bugs |
On Mon, Apr 13, 2020 at 10:59 PM Kamil Jońca <kjonca@fastmail.com> wrote: > #2 0x000055f675632af4 in ExceptionalCondition (conditionName=conditionName@entry=0x55f6758523f8 "!(result->tdrefcount== -1)", errorType=errorType@entry=0x55f67568a016 "FailedAssertion", > fileName=fileName@entry=0x55f675852008 "/build/postgresql-12-kUaQt8/postgresql-12-12.2/build/../src/backend/utils/cache/typcache.c", lineNumber=lineNumber@entry=2621)at ./build/../src/backend/utils/error/assert.c:54 > #3 0x000055f6756309ae in find_or_make_matching_shared_tupledesc (tupdesc=<optimized out>) at ./build/../src/backend/utils/cache/typcache.c:2621 This code is asserting that a TupleDesc that it found in CurrentSession->shared_record_table is not reference counted. That's because TupleDesc objects stored there stick around for the lifetime of the session (= leader backend lifetime). So the question is ... how did that thing manage to get some other value there, and what was it? What does "frame 3", "print *result" show?
В списке pgsql-bugs по дате отправления: