xiaokang commented on code in PR #35668:
URL: https://github.com/apache/doris/pull/35668#discussion_r1632332120


##########
be/src/olap/single_replica_compaction.cpp:
##########
@@ -396,8 +398,22 @@ Status SingleReplicaCompaction::_download_files(DataDir* 
data_dir,
     uint64_t total_file_size = 0;
     MonotonicStopWatch watch;
     watch.start();
+    CURL* curl = curl_easy_init();
     for (auto& file_name : file_name_list) {
-        auto remote_file_url = remote_url_prefix + file_name;
+        // The file name of the variant column with the inverted index 
contains %
+        // such as: 
020000000000003f624c4c322c568271060f9b5b274a4a95_0_10133@properties%2Emessage.idx
+        //  
{rowset_id}_{seg_num}_{index_id}_{variant_column_name}{%2E}{extracted_column_name}.idx
+        // We need to handle %, otherwise it will cause an HTTP 404 error.
+        // Because the percent ("%") character serves as the indicator for 
percent-encoded octets,
+        // it must be percent-encoded as "%25" for that octet to be used as 
data within a URI.
+        // https://datatracker.ietf.org/doc/html/rfc3986
+        char* output = curl_easy_escape(curl, file_name.c_str(), 
file_name.length());

Review Comment:
   use unique_ptr with custom delete function to avoid memory leak if return 
before curl_free



##########
be/src/olap/single_replica_compaction.cpp:
##########
@@ -396,8 +398,22 @@ Status SingleReplicaCompaction::_download_files(DataDir* 
data_dir,
     uint64_t total_file_size = 0;
     MonotonicStopWatch watch;
     watch.start();
+    CURL* curl = curl_easy_init();

Review Comment:
   use unique_ptr with custom delete function to avoid memory leak if return 
before curl_easy_cleanup



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to