You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by github-actions on 2023/01/26 09:47:07 UTC

[GitHub] [doris] github-actions[bot] commented on a diff in pull request #16143: [refactor](remove unused code) remove many xxxVal structure

github-actions[bot] commented on code in PR #16143:
URL: https://github.com/apache/doris/pull/16143#discussion_r1087616927


##########
be/src/udf/udf.h:
##########
@@ -853,82 +488,9 @@ struct DecimalV2Val : public AnyVal {
     bool operator!=(const DecimalV2Val& other) const { return !(*this == other); }
 };
 
-struct LargeIntVal : public AnyVal {
-    __int128 val;
-
-    LargeIntVal() : val(0) {}
-
-    LargeIntVal(__int128 large_value) : val(large_value) {}
-
-    static LargeIntVal null() {
-        LargeIntVal result;
-        result.is_null = true;
-        return result;
-    }
-
-    bool operator==(const LargeIntVal& other) const {
-        if (is_null && other.is_null) {
-            return true;
-        }
-
-        if (is_null || other.is_null) {
-            return false;
-        }
-
-        return val == other.val;
-    }
-    bool operator!=(const LargeIntVal& other) const { return !(*this == other); }
-};
-
-// todo(kks): keep HllVal struct only for backward compatibility, we should remove it
-//            when doris 0.12 release
-struct HllVal : public StringVal {
-    HllVal() : StringVal() {}
-
-    void init(FunctionContext* ctx);
-
-    void agg_parse_and_cal(FunctionContext* ctx, const HllVal& other);
-
-    void agg_merge(const HllVal& other);
-};
-
-struct CollectionVal : public AnyVal {
-    void* data;
-    uint64_t length;
-    // item has no null value if has_null is false.
-    // item ```may``` has null value if has_null is true.
-    bool has_null;
-    // null bitmap
-    bool* null_signs;
-
-    CollectionVal() = default;
-
-    CollectionVal(void* data, uint64_t length, bool has_null, bool* null_signs)
-            : data(data), length(length), has_null(has_null), null_signs(null_signs) {};
-
-    static CollectionVal null() {
-        CollectionVal val;
-        val.is_null = true;
-        return val;
-    }
-};
-typedef uint8_t* BufferVal;
-} // namespace doris_udf
-
-using doris_udf::BooleanVal;
-using doris_udf::TinyIntVal;
-using doris_udf::SmallIntVal;
-using doris_udf::IntVal;
 using doris_udf::BigIntVal;
-using doris_udf::LargeIntVal;
-using doris_udf::FloatVal;
 using doris_udf::DoubleVal;
 using doris_udf::StringVal;
 using doris_udf::DecimalV2Val;
 using doris_udf::DateTimeVal;
-using doris_udf::HllVal;
 using doris_udf::FunctionContext;

Review Comment:
   warning: expected '}' [clang-diagnostic-error]
   ```cpp
   using doris_udf::FunctionContext;
                                    ^
   ```
   **be/src/udf/udf.h:43:** to match this '{'
   ```cpp
   namespace doris_udf {
                       ^
   ```
   



##########
be/src/vec/functions/functions_geo.h:
##########
@@ -25,6 +25,21 @@
 
 namespace doris::vectorized {
 
+struct StConstructState {
+    StConstructState() : is_null(false) {}
+    ~StConstructState() {}

Review Comment:
   warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
   
   ```suggestion
       ~StConstructState() = default;
   ```
   



##########
be/src/vec/functions/functions_geo.h:
##########
@@ -25,6 +25,21 @@
 
 namespace doris::vectorized {
 
+struct StConstructState {
+    StConstructState() : is_null(false) {}
+    ~StConstructState() {}
+
+    bool is_null;
+    std::string encoded_buf;
+};
+
+struct StContainsState {
+    StContainsState() : is_null(false), shapes {nullptr, nullptr} {}
+    ~StContainsState() {}

Review Comment:
   warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
   
   ```suggestion
       ~StContainsState() = default;
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {

Review Comment:
   warning: no member named 'VecDateTimeValue' in namespace 'doris::vectorized' [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::VecDateTimeValue> {
                                    ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: no member named 'vectorized' in namespace 'doris'; did you mean 'doris::vectorized'? [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
               ^
   ```
   this fix will not be applied because it overlaps with another fix



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: no template named 'DateV2ValueType' in namespace 'doris::vectorized'; did you mean 'doris::vectorized::DateV2Value'? [clang-diagnostic-error]
   
   ```suggestion
   struct hash<::doris::vectorized::DateV2Value<doris::vectorized::DateV2Value>> {
   ```
   **be/src/vec/runtime/vdatetime_value.h:723:** 'doris::vectorized::DateV2Value' declared here
   ```cpp
   class DateV2Value {
         ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: expected unqualified-id [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {
                        ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: no member named 'DateTimeV2ValueType' in namespace 'doris::vectorized' [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {
                                                                     ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -581,7 +581,7 @@ class VecDateTimeValue { // Now this type is a temp solution with little changes
         return value;
     }
 
-    uint32_t hash(int seed) const { return HashUtil::hash(this, sizeof(*this), seed); }
+    uint32_t hash(int seed) const { return ::doris::HashUtil::hash(this, sizeof(*this), seed); }

Review Comment:
   warning: no member named 'HashUtil' in namespace 'doris'; did you mean simply 'HashUtil'? [clang-diagnostic-error]
   
   ```suggestion
       uint32_t hash(int seed) const { return HashUtil::hash(this, sizeof(*this), seed); }
   ```
   **be/src/util/hash_util.hpp:45:** 'HashUtil' declared here
   ```cpp
   class HashUtil {
         ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {

Review Comment:
   warning: expected unqualified-id [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::VecDateTimeValue> {
                        ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1040,7 +1040,7 @@
 
     DateV2Value<T>& operator--() { return *this += -1; }
 
-    uint32_t hash(int seed) const { return HashUtil::hash(this, sizeof(*this), seed); }
+    uint32_t hash(int seed) const { return ::doris::HashUtil::hash(this, sizeof(*this), seed); }

Review Comment:
   warning: no member named 'HashUtil' in namespace 'doris'; did you mean simply 'HashUtil'? [clang-diagnostic-error]
   
   ```suggestion
       uint32_t hash(int seed) const { return HashUtil::hash(this, sizeof(*this), seed); }
   ```
   **be/src/util/hash_util.hpp:45:** 'HashUtil' declared here
   ```cpp
   class HashUtil {
         ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {

Review Comment:
   warning: no member named 'vectorized' in namespace 'doris'; did you mean 'doris::vectorized'? [clang-diagnostic-error]
   
   ```suggestion
   struct hash<doris::vectorized::VecDateTimeValue> {
   ```
   **be/src/vec/runtime/vdatetime_value.h:35:** 'doris::vectorized' declared here
   ```cpp
   namespace vectorized {
             ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {

Review Comment:
   warning: no template named 'hash'; did you mean '::std::hash'? [clang-diagnostic-error]
   
   ```suggestion
   struct ::std::hash<::doris::vectorized::VecDateTimeValue> {
   ```
   **/usr/include/c++/11/string_view:686:** '::std::hash' declared here
   ```cpp
       struct hash;
              ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: expected unqualified-id [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
                        ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: no template named 'hash'; did you mean '::std::hash'? [clang-diagnostic-error]
   
   ```suggestion
   struct ::std::hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
   ```
   **/usr/include/c++/11/string_view:686:** '::std::hash' declared here
   ```cpp
       struct hash;
              ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: no member named 'vectorized' in namespace 'doris'; did you mean 'doris::vectorized'? [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
                                                ^
   ```
   this fix will not be applied because it overlaps with another fix



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: no member named 'vectorized' in namespace 'doris'; did you mean 'doris::vectorized'? [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {
               ^
   ```
   this fix will not be applied because it overlaps with another fix



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: no template named 'DateV2Value' in namespace 'doris::vectorized'; did you mean 'doris::vectorized::DateV2Value'? [clang-diagnostic-error]
   
   ```suggestion
   struct hash<doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
   ```
   **be/src/vec/runtime/vdatetime_value.h:723:** 'doris::vectorized::DateV2Value' declared here
   ```cpp
   class DateV2Value {
         ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {

Review Comment:
   warning: use of class template '::doris::vectorized::DateV2Value' requires template arguments [clang-diagnostic-error]
   ```cpp
   struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
                                                                     ^
   ```
   **be/src/vec/runtime/vdatetime_value.h:723:** template is declared here
   ```cpp
   class DateV2Value {
         ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: no template named 'hash'; did you mean '::std::hash'? [clang-diagnostic-error]
   
   ```suggestion
   struct ::std::hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {
   ```
   **/usr/include/c++/11/string_view:686:** '::std::hash' declared here
   ```cpp
       struct hash;
              ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: no member named 'vectorized' in namespace 'doris'; did you mean 'doris::vectorized'? [clang-diagnostic-error]
   
   ```suggestion
   struct hash<::doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
   ```
   **be/src/vec/runtime/vdatetime_value.h:35:** 'doris::vectorized' declared here
   ```cpp
   namespace vectorized {
             ^
   ```
   



##########
be/src/vec/runtime/vdatetime_value.h:
##########
@@ -1504,25 +1487,29 @@
 } // namespace vectorized
 } // namespace doris
 
+namespace std {
 template <>
-struct std::hash<doris::vectorized::VecDateTimeValue> {
-    size_t operator()(const doris::vectorized::VecDateTimeValue& v) const {
-        return doris::vectorized::hash_value(v);
+struct hash<::doris::vectorized::VecDateTimeValue> {
+    size_t operator()(const ::doris::vectorized::VecDateTimeValue& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>> {
     size_t operator()(
-            const doris::vectorized::DateV2Value<doris::vectorized::DateV2ValueType>& v) const {
-        return doris::vectorized::hash_value(v);
+            const ::doris::vectorized::DateV2Value<::doris::vectorized::DateV2ValueType>& v) const {
+        return ::doris::vectorized::hash_value(v);
     }
 };
 
 template <>
-struct std::hash<doris::vectorized::DateV2Value<doris::vectorized::DateTimeV2ValueType>> {
+struct hash<::doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {

Review Comment:
   warning: no template named 'DateV2Value' in namespace 'doris::vectorized'; did you mean 'doris::vectorized::DateV2Value'? [clang-diagnostic-error]
   
   ```suggestion
   struct hash<doris::vectorized::DateV2Value<::doris::vectorized::DateTimeV2ValueType>> {
   ```
   **be/src/vec/runtime/vdatetime_value.h:723:** 'doris::vectorized::DateV2Value' declared here
   ```cpp
   class DateV2Value {
         ^
   ```
   



-- 
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-unsubscribe@doris.apache.org

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


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