This is an automated email from the ASF dual-hosted git repository.

dataroaring pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new ebed055d2bd [chore](clone) rename clone request field (#27591)
ebed055d2bd is described below

commit ebed055d2bdfca7ad75734628de6410a348f757e
Author: yujun <[email protected]>
AuthorDate: Fri Dec 8 11:53:57 2023 +0800

    [chore](clone) rename clone request field (#27591)
---
 be/src/olap/task/engine_clone_task.cpp             | 32 ++++++++++------------
 be/src/olap/task/engine_clone_task.h               |  6 ++--
 .../main/java/org/apache/doris/task/CloneTask.java |  2 +-
 .../apache/doris/utframe/MockedBackendFactory.java |  4 +--
 gensrc/thrift/AgentService.thrift                  |  2 +-
 5 files changed, 22 insertions(+), 24 deletions(-)

diff --git a/be/src/olap/task/engine_clone_task.cpp 
b/be/src/olap/task/engine_clone_task.cpp
index d25716ad31f..997a5228c84 100644
--- a/be/src/olap/task/engine_clone_task.cpp
+++ b/be/src/olap/task/engine_clone_task.cpp
@@ -199,14 +199,13 @@ Status EngineCloneTask::_do_clone() {
         auto local_data_path = fmt::format("{}/{}", tablet->tablet_path(), 
CLONE_PREFIX);
         bool allow_incremental_clone = false;
 
-        int64_t specified_version = _clone_req.committed_version;
+        int64_t specified_version = _clone_req.version;
         if (tablet->enable_unique_key_merge_on_write()) {
             int64_t min_pending_ver =
                     
StorageEngine::instance()->get_pending_publish_min_version(tablet->tablet_id());
             if (min_pending_ver - 1 < specified_version) {
                 LOG(INFO) << "use min pending publish version for clone, 
min_pending_ver: "
-                          << min_pending_ver
-                          << " committed_version: " << 
_clone_req.committed_version;
+                          << min_pending_ver << " visible_version: " << 
_clone_req.version;
                 specified_version = min_pending_ver - 1;
             }
         }
@@ -225,7 +224,7 @@ Status EngineCloneTask::_do_clone() {
         LOG(INFO) << "clone to existed tablet. missed_versions_size=" << 
missed_versions.size()
                   << ", allow_incremental_clone=" << allow_incremental_clone
                   << ", signature=" << _signature << ", tablet_id=" << 
_clone_req.tablet_id
-                  << ", committed_version=" << _clone_req.committed_version
+                  << ", visible_version=" << _clone_req.version
                   << ", replica_id=" << _clone_req.replica_id;
 
         // try to download missing version from src backend.
@@ -239,7 +238,7 @@ Status EngineCloneTask::_do_clone() {
     } else {
         LOG(INFO) << "clone tablet not exist, begin clone a new tablet from 
remote be. "
                   << "signature=" << _signature << ", tablet_id=" << 
_clone_req.tablet_id
-                  << ", committed_version=" << _clone_req.committed_version
+                  << ", visible_version=" << _clone_req.version
                   << ", req replica=" << _clone_req.replica_id;
         // create a new tablet in this be
         // Get local disk from olap
@@ -294,8 +293,7 @@ Status EngineCloneTask::_set_tablet_info(bool 
is_new_tablet) {
     tablet_info.__set_replica_id(_clone_req.replica_id);
     tablet_info.__set_schema_hash(_clone_req.schema_hash);
     
RETURN_IF_ERROR(StorageEngine::instance()->tablet_manager()->report_tablet_info(&tablet_info));
-    if (_clone_req.__isset.committed_version &&
-        tablet_info.version < _clone_req.committed_version) {
+    if (_clone_req.__isset.version && tablet_info.version < 
_clone_req.version) {
         // if it is a new tablet and clone failed, then remove the tablet
         // if it is incremental clone, then must not drop the tablet
         if (is_new_tablet) {
@@ -306,13 +304,13 @@ Status EngineCloneTask::_set_tablet_info(bool 
is_new_tablet) {
                          << ", replica_id:" << _clone_req.replica_id
                          << ", schema_hash:" << _clone_req.schema_hash
                          << ", signature:" << _signature << ", version:" << 
tablet_info.version
-                         << ", expected_version: " << 
_clone_req.committed_version;
+                         << ", expected_version: " << _clone_req.version;
             
WARN_IF_ERROR(StorageEngine::instance()->tablet_manager()->drop_tablet(
                                   _clone_req.tablet_id, _clone_req.replica_id, 
false),
                           "drop stale cloned table failed");
         }
         return Status::InternalError("unexpected version. tablet version: {}, 
expected version: {}",
-                                     tablet_info.version, 
_clone_req.committed_version);
+                                     tablet_info.version, _clone_req.version);
     }
     LOG(INFO) << "clone get tablet info success. tablet_id:" << 
_clone_req.tablet_id
               << ", schema_hash:" << _clone_req.schema_hash << ", signature:" 
<< _signature
@@ -413,7 +411,7 @@ Status EngineCloneTask::_make_snapshot(const std::string& 
ip, int port, TTableId
     request.__set_tablet_id(tablet_id);
     request.__set_schema_hash(schema_hash);
     
request.__set_preferred_snapshot_version(g_Types_constants.TPREFER_SNAPSHOT_REQ_VERSION);
-    request.__set_version(_clone_req.committed_version);
+    request.__set_version(_clone_req.version);
     request.__set_is_copy_binlog(true);
     // TODO: missing version composed of singleton delta.
     // if not, this place should be rewrote.
@@ -577,8 +575,8 @@ Status EngineCloneTask::_download_files(DataDir* data_dir, 
const std::string& re
 /// This method will do the following things:
 /// 1. Linke all files from CLONE dir to tablet dir if file does not exist in 
tablet dir
 /// 2. Call _finish_xx_clone() to revise the tablet meta.
-Status EngineCloneTask::_finish_clone(Tablet* tablet, const std::string& 
clone_dir,
-                                      int64_t committed_version, bool 
is_incremental_clone) {
+Status EngineCloneTask::_finish_clone(Tablet* tablet, const std::string& 
clone_dir, int64_t version,
+                                      bool is_incremental_clone) {
     Defer remove_clone_dir {[&]() { std::filesystem::remove_all(clone_dir); }};
 
     // check clone dir existed
@@ -706,7 +704,7 @@ Status EngineCloneTask::_finish_clone(Tablet* tablet, const 
std::string& clone_d
     std::lock_guard<std::shared_mutex> wrlock(tablet->get_header_lock());
     SCOPED_SIMPLE_TRACE_IF_TIMEOUT(TRACE_TABLET_LOCK_THRESHOLD);
     if (is_incremental_clone) {
-        status = _finish_incremental_clone(tablet, cloned_tablet_meta, 
committed_version);
+        status = _finish_incremental_clone(tablet, cloned_tablet_meta, 
version);
     } else {
         status = _finish_full_clone(tablet, cloned_tablet_meta);
     }
@@ -725,17 +723,17 @@ Status EngineCloneTask::_finish_clone(Tablet* tablet, 
const std::string& clone_d
 /// 2. Revise the local tablet meta to add all incremental cloned rowset's 
meta.
 Status EngineCloneTask::_finish_incremental_clone(Tablet* tablet,
                                                   const TabletMetaSharedPtr& 
cloned_tablet_meta,
-                                                  int64_t committed_version) {
+                                                  int64_t version) {
     LOG(INFO) << "begin to finish incremental clone. tablet=" << 
tablet->tablet_id()
-              << ", committed_version=" << committed_version
+              << ", visible_version=" << version
               << ", cloned_tablet_replica_id=" << 
cloned_tablet_meta->replica_id();
 
     /// Get missing versions again from local tablet.
     /// We got it before outside the lock, so it has to be got again.
     std::vector<Version> missed_versions;
-    tablet->calc_missed_versions_unlocked(committed_version, &missed_versions);
+    tablet->calc_missed_versions_unlocked(version, &missed_versions);
     VLOG_NOTICE << "get missed versions again when finish incremental clone. "
-                << "tablet=" << tablet->tablet_id() << ", clone version=" << 
committed_version
+                << "tablet=" << tablet->tablet_id() << ", clone version=" << 
version
                 << ", missed_versions_size=" << missed_versions.size();
 
     // check missing versions exist in clone src
diff --git a/be/src/olap/task/engine_clone_task.h 
b/be/src/olap/task/engine_clone_task.h
index 9c79e5cadf7..4f502ea50fd 100644
--- a/be/src/olap/task/engine_clone_task.h
+++ b/be/src/olap/task/engine_clone_task.h
@@ -60,11 +60,11 @@ public:
 private:
     Status _do_clone();
 
-    virtual Status _finish_clone(Tablet* tablet, const std::string& clone_dir,
-                                 int64_t committed_version, bool 
is_incremental_clone);
+    virtual Status _finish_clone(Tablet* tablet, const std::string& clone_dir, 
int64_t version,
+                                 bool is_incremental_clone);
 
     Status _finish_incremental_clone(Tablet* tablet, const 
TabletMetaSharedPtr& cloned_tablet_meta,
-                                     int64_t committed_version);
+                                     int64_t version);
 
     Status _finish_full_clone(Tablet* tablet, const TabletMetaSharedPtr& 
cloned_tablet_meta);
 
diff --git a/fe/fe-core/src/main/java/org/apache/doris/task/CloneTask.java 
b/fe/fe-core/src/main/java/org/apache/doris/task/CloneTask.java
index 4c06460cee7..891ef99c6ed 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/task/CloneTask.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/task/CloneTask.java
@@ -83,7 +83,7 @@ public class CloneTask extends AgentTask {
         TCloneReq request = new TCloneReq(tabletId, schemaHash, srcBackends);
         request.setReplicaId(replicaId);
         request.setStorageMedium(storageMedium);
-        request.setCommittedVersion(visibleVersion);
+        request.setVersion(visibleVersion);
         request.setTaskVersion(taskVersion);
         request.setPartitionId(partitionId);
         if (taskVersion == VERSION_2) {
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/utframe/MockedBackendFactory.java 
b/fe/fe-core/src/test/java/org/apache/doris/utframe/MockedBackendFactory.java
index f96a85253fd..bd1ae4c69e1 100644
--- 
a/fe/fe-core/src/test/java/org/apache/doris/utframe/MockedBackendFactory.java
+++ 
b/fe/fe-core/src/test/java/org/apache/doris/utframe/MockedBackendFactory.java
@@ -248,8 +248,8 @@ public class MockedBackendFactory {
                     }
 
                     List<TTabletInfo> tabletInfos = Lists.newArrayList();
-                    TTabletInfo tabletInfo = new TTabletInfo(req.tablet_id, 
req.schema_hash, req.committed_version,
-                            req.committed_version_hash, 1, dataSize);
+                    TTabletInfo tabletInfo = new TTabletInfo(req.tablet_id, 
req.schema_hash, req.version,
+                            0L, 1, dataSize);
                     tabletInfo.setStorageMedium(req.storage_medium);
                     tabletInfo.setPathHash(pathHash);
                     tabletInfo.setUsed(true);
diff --git a/gensrc/thrift/AgentService.thrift 
b/gensrc/thrift/AgentService.thrift
index c83660e9b9b..6f777675f3e 100644
--- a/gensrc/thrift/AgentService.thrift
+++ b/gensrc/thrift/AgentService.thrift
@@ -258,7 +258,7 @@ struct TCloneReq {
     3: required list<Types.TBackend> src_backends
     4: optional Types.TStorageMedium storage_medium
     // these are visible version(hash) actually
-    5: optional Types.TVersion committed_version
+    5: optional Types.TVersion version
     6: optional Types.TVersionHash committed_version_hash // Deprecated
     7: optional i32 task_version;
     8: optional i64 src_path_hash;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to