github-actions[bot] commented on code in PR #33414:
URL: https://github.com/apache/doris/pull/33414#discussion_r1556979433
##########
be/src/cloud/cloud_cumulative_compaction_policy.cpp:
##########
@@ -213,4 +213,143 @@
: last_cumulative_point;
}
+int32_t CloudTimeSeriesCumulativeCompactionPolicy::pick_input_rowsets(
Review Comment:
warning: method 'pick_input_rowsets' can be made static
[readability-convert-member-functions-to-static]
```suggestion
static int32_t CloudTimeSeriesCumulativeCompactionPolicy::pick_input_rowsets(
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -73,4 +92,22 @@
int64_t _promotion_version_count;
};
+class CloudTimeSeriesCumulativeCompactionPolicy : public
CloudCumulativeCompactionPolicy {
+public:
+ CloudTimeSeriesCumulativeCompactionPolicy() = default;
+ ~CloudTimeSeriesCumulativeCompactionPolicy() override = default;
+
+ int64_t new_cumulative_point(CloudTablet* tablet, const RowsetSharedPtr&
output_rowset,
+ Version& last_delete_version,
+ int64_t last_cumulative_point) override;
+
+ int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
+ const int64_t min_compaction_score,
Review Comment:
warning: parameter 'min_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t min_compaction_score,
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -34,7 +34,24 @@
class Tablet;
struct Version;
-class CloudSizeBasedCumulativeCompactionPolicy {
+class CloudCumulativeCompactionPolicy {
+public:
+ virtual ~CloudCumulativeCompactionPolicy() = default;
+
+ virtual int64_t new_cumulative_point(CloudTablet* tablet, const
RowsetSharedPtr& output_rowset,
+ Version& last_delete_version,
+ int64_t last_cumulative_point) = 0;
+
+ virtual int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
+ const int64_t min_compaction_score,
Review Comment:
warning: parameter 'min_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t min_compaction_score,
```
##########
be/src/cloud/cloud_storage_engine.cpp:
##########
@@ -766,4 +770,12 @@ Status
CloudStorageEngine::get_compaction_status_json(std::string* result) {
return Status::OK();
}
+std::shared_ptr<CloudCumulativeCompactionPolicy>
CloudStorageEngine::cumu_compaction_policy(
Review Comment:
warning: method 'cumu_compaction_policy' can be made static
[readability-convert-member-functions-to-static]
be/src/cloud/cloud_storage_engine.h:108:
```diff
- std::shared_ptr<CloudCumulativeCompactionPolicy>
cumu_compaction_policy(
+ static std::shared_ptr<CloudCumulativeCompactionPolicy>
cumu_compaction_policy(
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -43,17 +60,19 @@
int64_t compaction_min_size = config::compaction_min_size_mbytes *
1024 * 1024,
int64_t promotion_version_count =
config::compaction_promotion_version_count);
- ~CloudSizeBasedCumulativeCompactionPolicy() {}
+ ~CloudSizeBasedCumulativeCompactionPolicy() override = default;
int64_t new_cumulative_point(CloudTablet* tablet, const RowsetSharedPtr&
output_rowset,
- Version& last_delete_version, int64_t
last_cumulative_point);
+ Version& last_delete_version,
+ int64_t last_cumulative_point) override;
- int pick_input_rowsets(CloudTablet* tablet,
- const std::vector<RowsetSharedPtr>&
candidate_rowsets,
- const int64_t max_compaction_score, const int64_t
min_compaction_score,
- std::vector<RowsetSharedPtr>* input_rowsets,
- Version* last_delete_version, size_t*
compaction_score,
- bool allow_delete = false);
+ int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
+ const int64_t min_compaction_score,
Review Comment:
warning: parameter 'min_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t min_compaction_score,
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -34,7 +34,24 @@ namespace doris {
class Tablet;
struct Version;
-class CloudSizeBasedCumulativeCompactionPolicy {
+class CloudCumulativeCompactionPolicy {
+public:
+ virtual ~CloudCumulativeCompactionPolicy() = default;
+
+ virtual int64_t new_cumulative_point(CloudTablet* tablet, const
RowsetSharedPtr& output_rowset,
+ Version& last_delete_version,
+ int64_t last_cumulative_point) = 0;
+
+ virtual int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
Review Comment:
warning: parameter 'max_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t max_compaction_score,
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.cpp:
##########
@@ -49,7 +49,7 @@ int64_t
CloudSizeBasedCumulativeCompactionPolicy::_level_size(const int64_t size
return (int64_t)1 << (sizeof(size) * 8 - 1 - __builtin_clzl(size));
}
-int CloudSizeBasedCumulativeCompactionPolicy::pick_input_rowsets(
+int32_t CloudSizeBasedCumulativeCompactionPolicy::pick_input_rowsets(
Review Comment:
warning: function 'pick_input_rowsets' exceeds recommended size/complexity
thresholds [readability-function-size]
```cpp
int32_t CloudSizeBasedCumulativeCompactionPolicy::pick_input_rowsets(
^
```
<details>
<summary>Additional context</summary>
**be/src/cloud/cloud_cumulative_compaction_policy.cpp:51:** 127 lines
including whitespace and comments (threshold 80)
```cpp
int32_t CloudSizeBasedCumulativeCompactionPolicy::pick_input_rowsets(
^
```
</details>
##########
be/src/cloud/cloud_cumulative_compaction_policy.cpp:
##########
@@ -213,4 +213,143 @@
: last_cumulative_point;
}
+int32_t CloudTimeSeriesCumulativeCompactionPolicy::pick_input_rowsets(
Review Comment:
warning: function 'pick_input_rowsets' exceeds recommended size/complexity
thresholds [readability-function-size]
```cpp
int32_t CloudTimeSeriesCumulativeCompactionPolicy::pick_input_rowsets(
^
```
<details>
<summary>Additional context</summary>
**be/src/cloud/cloud_cumulative_compaction_policy.cpp:215:** 118 lines
including whitespace and comments (threshold 80)
```cpp
int32_t CloudTimeSeriesCumulativeCompactionPolicy::pick_input_rowsets(
^
```
</details>
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -73,4 +92,22 @@
int64_t _promotion_version_count;
};
+class CloudTimeSeriesCumulativeCompactionPolicy : public
CloudCumulativeCompactionPolicy {
+public:
+ CloudTimeSeriesCumulativeCompactionPolicy() = default;
+ ~CloudTimeSeriesCumulativeCompactionPolicy() override = default;
+
+ int64_t new_cumulative_point(CloudTablet* tablet, const RowsetSharedPtr&
output_rowset,
+ Version& last_delete_version,
+ int64_t last_cumulative_point) override;
+
+ int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
Review Comment:
warning: parameter 'max_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t max_compaction_score,
```
##########
be/src/cloud/cloud_cumulative_compaction_policy.h:
##########
@@ -43,17 +60,19 @@
int64_t compaction_min_size = config::compaction_min_size_mbytes *
1024 * 1024,
int64_t promotion_version_count =
config::compaction_promotion_version_count);
- ~CloudSizeBasedCumulativeCompactionPolicy() {}
+ ~CloudSizeBasedCumulativeCompactionPolicy() override = default;
int64_t new_cumulative_point(CloudTablet* tablet, const RowsetSharedPtr&
output_rowset,
- Version& last_delete_version, int64_t
last_cumulative_point);
+ Version& last_delete_version,
+ int64_t last_cumulative_point) override;
- int pick_input_rowsets(CloudTablet* tablet,
- const std::vector<RowsetSharedPtr>&
candidate_rowsets,
- const int64_t max_compaction_score, const int64_t
min_compaction_score,
- std::vector<RowsetSharedPtr>* input_rowsets,
- Version* last_delete_version, size_t*
compaction_score,
- bool allow_delete = false);
+ int32_t pick_input_rowsets(CloudTablet* tablet,
+ const std::vector<RowsetSharedPtr>&
candidate_rowsets,
+ const int64_t max_compaction_score,
Review Comment:
warning: parameter 'max_compaction_score' is const-qualified in the function
declaration; const-qualification of parameters only has an effect in function
definitions [readability-avoid-const-params-in-decls]
```suggestion
int64_t max_compaction_score,
```
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]