bug fix:
set default_transaction_isolation='REPEATABLE READ', and restart the database, a coredump is product.
This commit is contained in:
@ -784,18 +784,7 @@ static XLogRecPtr LogCurrentRunningXacts(RunningTransactions CurrRunningXacts)
|
|||||||
{
|
{
|
||||||
xl_running_xacts xlrec;
|
xl_running_xacts xlrec;
|
||||||
XLogRecPtr recptr;
|
XLogRecPtr recptr;
|
||||||
TransactionId recentXmin = InvalidTransactionId;
|
TransactionId recentXmin = t_thrd.xact_cxt.ShmemVariableCache->recentGlobalXmin;
|
||||||
|
|
||||||
#ifndef ENABLE_MULTIPLE_NODES
|
|
||||||
GetTransactionSnapshot();
|
|
||||||
recentXmin = u_sess->utils_cxt.RecentXmin;
|
|
||||||
if (IsUnderPostmaster) {
|
|
||||||
ProcArrayClearTransaction(t_thrd.proc);
|
|
||||||
}
|
|
||||||
Assert(TransactionIdIsValid(recentXmin));
|
|
||||||
#else
|
|
||||||
recentXmin = t_thrd.xact_cxt.ShmemVariableCache->recentGlobalXmin;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
XLogBeginInsert();
|
XLogBeginInsert();
|
||||||
XLogRegisterData((char*)(&recentXmin), sizeof(TransactionId));
|
XLogRegisterData((char*)(&recentXmin), sizeof(TransactionId));
|
||||||
|
Reference in New Issue
Block a user