You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@rocketmq.apache.org by vo...@apache.org on 2020/02/19 11:46:41 UTC
[rocketmq-client-cpp] branch master updated: fix(transaction):
failed to select transaction producer to call local state checker (#246)
This is an automated email from the ASF dual-hosted git repository.
vongosling pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-client-cpp.git
The following commit(s) were added to refs/heads/master by this push:
new 1e4ac9c fix(transaction): failed to select transaction producer to call local state checker (#246)
1e4ac9c is described below
commit 1e4ac9c0d3fa67c087e6077977992d53ec07aa98
Author: dinglei <li...@163.com>
AuthorDate: Wed Feb 19 19:46:31 2020 +0800
fix(transaction): failed to select transaction producer to call local state checker (#246)
* fix(transaction): failed to select transaction producer to call local state checker
* fix(transaction): fix the coredump when the transaction producer shutdown.
---
src/MQClientFactory.cpp | 4 ++--
src/extern/CProducer.cpp | 4 ----
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/src/MQClientFactory.cpp b/src/MQClientFactory.cpp
index 6e1a392..5a3e363 100644
--- a/src/MQClientFactory.cpp
+++ b/src/MQClientFactory.cpp
@@ -22,7 +22,7 @@
#include "PullRequest.h"
#include "Rebalance.h"
#include "TopicPublishInfo.h"
-#include "TransactionMQProducer.h"
+#include "TransactionMQProducerImpl.h"
#define MAX_BUFF_SIZE 8192
#define SAFE_BUFF_SIZE 7936 // 8192 - 256 = 7936
@@ -698,7 +698,7 @@ void MQClientFactory::checkTransactionState(const std::string& addr,
if (!group.empty()) {
MQProducer* producer = selectProducer(group);
if (producer != nullptr) {
- TransactionMQProducer* transProducer = dynamic_cast<TransactionMQProducer*>(producer);
+ TransactionMQProducerImpl* transProducer = dynamic_cast<TransactionMQProducerImpl*>(producer);
if (transProducer != nullptr) {
transProducer->checkTransactionState(addr, messageExt, checkRequestHeader.m_tranStateTableOffset,
checkRequestHeader.m_commitLogOffset, checkRequestHeader.m_msgId,
diff --git a/src/extern/CProducer.cpp b/src/extern/CProducer.cpp
index e230257..d025a21 100644
--- a/src/extern/CProducer.cpp
+++ b/src/extern/CProducer.cpp
@@ -261,10 +261,6 @@ int DestroyProducer(CProducer* pProducer) {
delete defaultMQProducer->innerTransactionProducer;
defaultMQProducer->innerTransactionProducer = NULL;
}
- if (defaultMQProducer->listenerInner != NULL) {
- delete defaultMQProducer->listenerInner;
- defaultMQProducer->listenerInner = NULL;
- }
} else {
if (defaultMQProducer->innerProducer != NULL) {
delete defaultMQProducer->innerProducer;