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 8c532e8808 [fix](restore) work around, ingest binlog after backup/restore which local_tablet.partition_id is not correct, use req.partition_id (#21288) 8c532e8808 is described below commit 8c532e8808125cbd2e144b30f689c07151635b19 Author: Jack Drogon <jack.xsuper...@gmail.com> AuthorDate: Thu Jun 29 17:19:02 2023 +0800 [fix](restore) work around, ingest binlog after backup/restore which local_tablet.partition_id is not correct, use req.partition_id (#21288) * work around, ingest binlog after backup/restore which local_tablet.partition_id is not correct, use by req.partition_id Signed-off-by: Jack Drogon <jack.xsuper...@gmail.com> --- be/src/service/backend_service.cpp | 11 ++++++----- .../groovy/org/apache/doris/regression/suite/Syncer.groovy | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/be/src/service/backend_service.cpp b/be/src/service/backend_service.cpp index 1b4a1ec944..76722ba858 100644 --- a/be/src/service/backend_service.cpp +++ b/be/src/service/backend_service.cpp @@ -384,6 +384,7 @@ void BackendService::check_storage_format(TCheckStorageFormatResult& result) { void BackendService::ingest_binlog(TIngestBinlogResult& result, const TIngestBinlogRequest& request) { + constexpr uint64_t kMaxTimeoutMs = 1000; TStatus tstatus; Defer defer {[&result, &tstatus]() { result.__set_status(tstatus); }}; @@ -485,7 +486,7 @@ void BackendService::ingest_binlog(TIngestBinlogResult& result, std::string binlog_info; auto get_binlog_info_cb = [&get_binlog_info_url, &binlog_info](HttpClient* client) { RETURN_IF_ERROR(client->init(get_binlog_info_url)); - client->set_timeout_ms(10); // 10ms + client->set_timeout_ms(kMaxTimeoutMs); return client->execute(&binlog_info); }; status = HttpClient::execute_with_retry(max_retry, 1, get_binlog_info_cb); @@ -509,7 +510,7 @@ void BackendService::ingest_binlog(TIngestBinlogResult& result, std::string rowset_meta_str; auto get_rowset_meta_cb = [&get_rowset_meta_url, &rowset_meta_str](HttpClient* client) { RETURN_IF_ERROR(client->init(get_rowset_meta_url)); - client->set_timeout_ms(10); // 10ms + client->set_timeout_ms(kMaxTimeoutMs); return client->execute(&rowset_meta_str); }; status = HttpClient::execute_with_retry(max_retry, 1, get_rowset_meta_cb); @@ -528,7 +529,7 @@ void BackendService::ingest_binlog(TIngestBinlogResult& result, } // rewrite rowset meta rowset_meta_pb.set_tablet_id(local_tablet_id); - rowset_meta_pb.set_partition_id(local_tablet->tablet_meta()->partition_id()); + rowset_meta_pb.set_partition_id(partition_id); rowset_meta_pb.set_tablet_schema_hash(local_tablet->tablet_meta()->schema_hash()); rowset_meta_pb.set_txn_id(txn_id); rowset_meta_pb.set_rowset_state(RowsetStatePB::COMMITTED); @@ -556,7 +557,7 @@ void BackendService::ingest_binlog(TIngestBinlogResult& result, auto get_segment_file_size_cb = [&get_segment_file_size_url, &segment_file_size](HttpClient* client) { RETURN_IF_ERROR(client->init(get_segment_file_size_url)); - client->set_timeout_ms(10); // 10ms + client->set_timeout_ms(kMaxTimeoutMs); RETURN_IF_ERROR(client->head()); return client->get_content_length(&segment_file_size); }; @@ -600,7 +601,7 @@ void BackendService::ingest_binlog(TIngestBinlogResult& result, auto get_segment_file_cb = [&get_segment_file_url, &local_segment_path, segment_file_size, estimate_timeout](HttpClient* client) { RETURN_IF_ERROR(client->init(get_segment_file_url)); - client->set_timeout_ms(estimate_timeout * 1000); // 10ms + client->set_timeout_ms(estimate_timeout * 1000); RETURN_IF_ERROR(client->download(local_segment_path)); std::error_code ec; diff --git a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy index e8724bb097..805093ef4f 100644 --- a/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy +++ b/regression-test/framework/src/main/groovy/org/apache/doris/regression/suite/Syncer.groovy @@ -680,7 +680,7 @@ class Syncer { } tarPartition.value.version = srcPartition.value.version - long partitionId = fakePartitionId == -1 ? srcPartition.key : fakePartitionId + long partitionId = fakePartitionId == -1 ? tarPartition.key : fakePartitionId long version = fakeVersion == -1 ? srcPartition.value.version : fakeVersion TIngestBinlogRequest request = new TIngestBinlogRequest() --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org