yiguolei commented on code in PR #56600:
URL: https://github.com/apache/doris/pull/56600#discussion_r2390085829
##########
be/src/vec/functions/function_bitmap.cpp:
##########
@@ -940,31 +937,28 @@ struct BitmapHasAll {
using TData = std::vector<BitmapValue>;
using ResTData = typename ColumnUInt8::Container;
- static void vector_vector(const TData& lvec, const TData& rvec, ResTData&
res) {
+ static void vector_vector(TData lvec, const TData& rvec, ResTData& res) {
size_t size = lvec.size();
for (size_t i = 0; i < size; ++i) {
uint64_t lhs_cardinality = lvec[i].cardinality();
- auto bitmap = const_cast<BitmapValue&>(lvec[i]);
- bitmap |= rvec[i];
- res[i] = bitmap.cardinality() == lhs_cardinality;
+ lvec[i] |= rvec[i];
+ res[i] = lvec[i].cardinality() == lhs_cardinality;
}
}
- static void vector_scalar(const TData& lvec, const BitmapValue& rval,
ResTData& res) {
+ static void vector_scalar(TData lvec, const BitmapValue& rval, ResTData&
res) {
size_t size = lvec.size();
for (size_t i = 0; i < size; ++i) {
uint64_t lhs_cardinality = lvec[i].cardinality();
- auto bitmap = const_cast<BitmapValue&>(lvec[i]);
- bitmap |= rval;
- res[i] = bitmap.cardinality() == lhs_cardinality;
+ lvec[i] |= rval;
+ res[i] = lvec[i].cardinality() == lhs_cardinality;
}
}
- static void scalar_vector(const BitmapValue& lval, const TData& rvec,
ResTData& res) {
+ static void scalar_vector(BitmapValue lval, const TData& rvec, ResTData&
res) {
size_t size = rvec.size();
for (size_t i = 0; i < size; ++i) {
uint64_t lhs_cardinality = lval.cardinality();
- auto bitmap = const_cast<BitmapValue&>(lval);
- bitmap |= rvec[i];
- res[i] = bitmap.cardinality() == lhs_cardinality;
+ lval |= rvec[i];
Review Comment:
还有这里
--
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]