diff options
Diffstat (limited to 'src/backend/replication/logical/reorderbuffer.c')
-rw-r--r-- | src/backend/replication/logical/reorderbuffer.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/backend/replication/logical/reorderbuffer.c b/src/backend/replication/logical/reorderbuffer.c index b3276c74c7c..2f4489d1b3e 100644 --- a/src/backend/replication/logical/reorderbuffer.c +++ b/src/backend/replication/logical/reorderbuffer.c @@ -2335,27 +2335,27 @@ ReorderBufferRestoreChange(ReorderBuffer *rb, ReorderBufferTXN *txn, case REORDER_BUFFER_CHANGE_UPDATE: case REORDER_BUFFER_CHANGE_DELETE: case REORDER_BUFFER_CHANGE_INTERNAL_SPEC_INSERT: - if (change->data.tp.newtuple) + if (change->data.tp.oldtuple) { Size len = offsetof(ReorderBufferTupleBuf, t_data) + ((ReorderBufferTupleBuf *) data)->tuple.t_len; - change->data.tp.newtuple = ReorderBufferGetTupleBuf(rb); - memcpy(change->data.tp.newtuple, data, len); - change->data.tp.newtuple->tuple.t_data = - &change->data.tp.newtuple->t_data.header; + change->data.tp.oldtuple = ReorderBufferGetTupleBuf(rb); + memcpy(change->data.tp.oldtuple, data, len); + change->data.tp.oldtuple->tuple.t_data = + &change->data.tp.oldtuple->t_data.header; data += len; } - if (change->data.tp.oldtuple) + if (change->data.tp.newtuple) { Size len = offsetof(ReorderBufferTupleBuf, t_data) + ((ReorderBufferTupleBuf *) data)->tuple.t_len; - change->data.tp.oldtuple = ReorderBufferGetTupleBuf(rb); - memcpy(change->data.tp.oldtuple, data, len); - change->data.tp.oldtuple->tuple.t_data = - &change->data.tp.oldtuple->t_data.header; + change->data.tp.newtuple = ReorderBufferGetTupleBuf(rb); + memcpy(change->data.tp.newtuple, data, len); + change->data.tp.newtuple->tuple.t_data = + &change->data.tp.newtuple->t_data.header; data += len; } break; |