Skip to content

Commit 6fd0c30

Browse files
committed
Disable distributed commit during proc_exit_inprogress.
1 parent f2aea5a commit 6fd0c30

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

src/commit.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,13 @@ MtmBeginTransaction()
188188
/* XXX: clean MtmTx on commit and check on begin that it is clean. */
189189
/* That should unveil probable issues with subxacts. */
190190

191-
if (!MtmIsEnabled())
191+
/*
192+
* XXX: proc_exit_inprogress added after weird failure in JIT guts
193+
* (through MtmLoadConfig) on RemoveTempRelationsCallback xact start. The
194+
* reasons are not exactly clear, but we hardly need distributed xacts
195+
* during shutdown.
196+
*/
197+
if (proc_exit_inprogress || !MtmIsEnabled())
192198
{
193199
MtmTx.distributed = false;
194200
return;

src/multimaster.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1444,7 +1444,7 @@ mtm_join_node(PG_FUNCTION_ARGS)
14441444
}
14451445

14461446
/*
1447-
* Check that all current gen members have the same gen and doesn't want to
1447+
* Check that all current gen members have the same gen and don't want to
14481448
* change it. This is useful for learning when cluster has finally started up
14491449
* and no generation switch perturbations will happen anymore unless some
14501450
* failure happens. Note that it asserts that all gen members are online -- we

src/pglogical_apply.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ process_remote_begin(StringInfo s, MtmReceiverWorkerContext *rwctx)
197197
int sender_node_id = pq_getmsgint(s, 4);
198198
Assert(rwctx->sender_node_id == sender_node_id);
199199
rwctx->origin_xid = pq_getmsgint64(s);
200+
mtm_log(MtmApplyTrace, "processing begin of xid " XID_FMT, rwctx->origin_xid);
200201

201202
InterruptPending = false;
202203
QueryCancelPending = false;

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy