Re: [BUGS] Postgres backend segfault
От | Dmitriy Sarafannikov |
---|---|
Тема | Re: [BUGS] Postgres backend segfault |
Дата | |
Msg-id | 1453878400.81526320@f404.i.mail.ru обсуждение исходный текст |
Ответ на | Re: Re: [BUGS] Postgres backend segfault (Michael Paquier <michael.paquier@gmail.com>) |
Список | pgsql-bugs |
Thanks for answer,
There were performed parallel only standard commands like select, update, insert, delete, stored procedures which execute select/update/delete/insertThis is telling that this process is running a cache invalidation
signal outside a transaction block. The only logical explanation that
I see here is that the transaction state of CurrentTransactionState is
not set to TBLOCK_DEFAULT, making transInvalInfo to not be
initialized, but we are sure that it is initialized via
IsTransactionOrTransactionBlock and CurrentTransactionState is set
per-backend. What kind of commands have you run in parallel for this
to happen?
Value of CurrentTransactionState:
(gdb) print *CurrentTransactionState
$1 = {transactionId = 0, subTransactionId = 1, name = 0x0, savepointLevel = 0, state = TRANS_COMMIT, blockState = TBLOCK_STARTED, nestingLevel = 1, gucNestLevel = 1, curTransactionContext = 0x7f6ecdc3de10,
curTransactionOwner = 0x7f6eccf72800, childXids = 0x0, nChildXids = 0, maxChildXids = 0, prevUser = 21339, prevSecContext = 0, prevXactReadOnly = 0 '\000', startedInRecovery = 0 '\000',
didLogXid = 0 '\000', parent = 0x0}
--
Best regards,
Dmitriy Sarafannikov
В списке pgsql-bugs по дате отправления: