From d9ada0226fb21999a459a22a4875fe5c71c6513c Mon Sep 17 00:00:00 2001 From: Leandro Pacheco Date: Mon, 11 Mar 2019 14:49:01 +0100 Subject: [PATCH] use `log_position` when calculating bytes_to_replicate `bytes_certified` includes XA events which are not written to the binlog. Thus, we need to use `log_position` instead. --- src/transaction.cpp | 3 ++- wsrep-API/v26 | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/transaction.cpp b/src/transaction.cpp index cebf4fc..4cdaa13 100644 --- a/src/transaction.cpp +++ b/src/transaction.cpp @@ -1150,7 +1150,7 @@ int wsrep::transaction::streaming_step(wsrep::unique_lock& lock) int ret(0); const size_t bytes_to_replicate(client_service_.bytes_generated() - - streaming_context_.bytes_certified()); + streaming_context_.log_position()); switch (streaming_context_.fragment_unit()) { @@ -1699,6 +1699,7 @@ void wsrep::transaction::debug_log_state( << ", unit: " << streaming_context_.fragment_unit() << ", size: " << streaming_context_.fragment_size() << ", counter: " << streaming_context_.unit_counter() + << ", log_pos: " << streaming_context_.log_position() << ", bytes: " << streaming_context_.bytes_certified() << ", sr_rb: " << streaming_context_.rolled_back() << "\n own: " << (client_state_.owning_thread_id_ == wsrep::this_thread::get_id()) diff --git a/wsrep-API/v26 b/wsrep-API/v26 index 12a50c4..75a5f45 160000 --- a/wsrep-API/v26 +++ b/wsrep-API/v26 @@ -1 +1 @@ -Subproject commit 12a50c43b112648fec3b1213a1470a85aca55f2c +Subproject commit 75a5f452f2ba07b0f4a3a9a94825fccc71b27398