Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 1595b37

Browse files
knizhnikkelvich
authored andcommitted
Fix 64-bit XID issue in multimaster
1 parent ada1dd1 commit 1595b37

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

pglogical_apply.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -342,7 +342,7 @@ process_remote_begin(StringInfo s)
342342
int rc;
343343

344344
gtid.node = pq_getmsgint(s, 4);
345-
gtid.xid = pq_getmsgint(s, 4);
345+
gtid.xid = pq_getmsgint64(s);
346346
snapshot = pq_getmsgint64(s);
347347
participantsMask = pq_getmsgint64(s);
348348
Assert(gtid.node > 0);

pglogical_proto.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ pglogical_write_begin(StringInfo out, PGLogicalOutputData *data,
159159
MTM_LOG2("%d: pglogical_write_begin XID=%lld sent", MyProcPid, (long64)txn->xid);
160160
pq_sendbyte(out, 'B'); /* BEGIN */
161161
pq_sendint(out, MtmNodeId, 4);
162-
pq_sendint(out, isRecovery ? InvalidTransactionId : txn->xid, 4);
162+
pq_sendint64(out, isRecovery ? InvalidTransactionId : txn->xid, 4);
163163
pq_sendint64(out, csn);
164164
pq_sendint64(out, participantsMask);
165165

0 commit comments

Comments
 (0)