You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tubemq.apache.org by go...@apache.org on 2020/10/09 03:29:24 UTC
[incubator-tubemq] branch master updated: [TUBEMQ-370] Calling
GetCurConsumedInfo API always returns failure (#282)
This is an automated email from the ASF dual-hosted git repository.
gosonzhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-tubemq.git
The following commit(s) were added to refs/heads/master by this push:
new f357f20 [TUBEMQ-370] Calling GetCurConsumedInfo API always returns failure (#282)
f357f20 is described below
commit f357f204831950756d8e2f8ff02ec61e5074236f
Author: gosonzhang <46...@qq.com>
AuthorDate: Fri Oct 9 11:29:17 2020 +0800
[TUBEMQ-370] Calling GetCurConsumedInfo API always returns failure (#282)
Co-authored-by: gosonzhang <go...@tencent.com>
---
.../tubemq-client-cpp/src/rmt_data_cache.cc | 14 +++-----------
tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.h | 2 +-
2 files changed, 4 insertions(+), 12 deletions(-)
diff --git a/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.cc b/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.cc
index 8bc9067..86df833 100644
--- a/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.cc
+++ b/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.cc
@@ -178,7 +178,6 @@ bool RmtDataCacheCsm::SelectPartition(int32_t& error_code, string& err_info,
}
void RmtDataCacheCsm::BookedPartionInfo(const string& partition_key, int64_t curr_offset) {
- map<string, PartitionExt>::iterator it_part;
// book partition offset info
if (curr_offset >= 0) {
lock_guard<mutex> lck1(data_book_mutex_);
@@ -192,10 +191,7 @@ void RmtDataCacheCsm::BookedPartionInfo(const string& partition_key, int64_t cur
bool require_slow) {
map<string, PartitionExt>::iterator it_part;
// book partition offset info
- if (curr_offset >= 0) {
- lock_guard<mutex> lck1(data_book_mutex_);
- partition_offset_[partition_key] = curr_offset;
- }
+ BookedPartionInfo(partition_key, curr_offset);
// book partition temp info
lock_guard<mutex> lck2(meta_lock_);
it_part = partitions_.find(partition_key);
@@ -339,14 +335,10 @@ void RmtDataCacheCsm::GetPartitionByBroker(const NodeInfo& broker_info,
}
}
-void RmtDataCacheCsm::GetCurPartitionOffsets(map<string, int64_t> part_offset_map) {
- map<string, int64_t>::iterator it;
-
+void RmtDataCacheCsm::GetCurPartitionOffsets(map<string, int64_t>& part_offset_map) {
part_offset_map.clear();
lock_guard<mutex> lck(data_book_mutex_);
- for (it = partition_offset_.begin(); it != partition_offset_.end(); ++it) {
- part_offset_map[it->first] = it->second;
- }
+ part_offset_map = partition_offset_;
}
//
diff --git a/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.h b/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.h
index 5b77eb7..f90a8f8 100644
--- a/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.h
+++ b/tubemq-client-twins/tubemq-client-cpp/src/rmt_data_cache.h
@@ -91,7 +91,7 @@ class RmtDataCacheCsm {
void GetRegBrokers(list<NodeInfo>& brokers);
void GetPartitionByBroker(const NodeInfo& broker_info,
list<PartitionExt>& partition_list);
- void GetCurPartitionOffsets(map<string, int64_t> part_offset_map);
+ void GetCurPartitionOffsets(map<string, int64_t>& part_offset_map);
void GetAllClosedBrokerParts(map<NodeInfo, list<PartitionExt> >& broker_parts);
void RemovePartition(const list<PartitionExt>& partition_list);
void RemovePartition(const set<string>& partition_keys);