diff --git a/velox/exec/HashProbe.cpp b/velox/exec/HashProbe.cpp index 2e93eb70d52d..0adcc13ffa7f 100644 --- a/velox/exec/HashProbe.cpp +++ b/velox/exec/HashProbe.cpp @@ -1018,7 +1018,7 @@ RowVectorPtr HashProbe::getOutputInternal(bool toSpillOutput) { // Intialize 'leftSemiProjectIsNull_' for null aware lft semi join. if (isLeftSemiProjectJoin(joinType_) && nullAware_) { - leftSemiProjectIsNull_.clearAll(); + leftSemiProjectIsNull_.resize(outputTableRowsCapacity_, false); } } @@ -1488,8 +1488,6 @@ int32_t HashProbe::evalFilter(int32_t numRows, int32_t offset) { static const char* kPassed = "passed"; if (nullAware_) { - leftSemiProjectIsNull_.resize(numRows + offset, false); - auto addLast = [&](auto row, std::optional passed) { if (passed.has_value()) { outputTableRows[numPassed] = diff --git a/velox/vector/BaseVector.h b/velox/vector/BaseVector.h index 0453a74305fe..82eb92799020 100644 --- a/velox/vector/BaseVector.h +++ b/velox/vector/BaseVector.h @@ -867,18 +867,6 @@ class BaseVector { storageByteCount_ = std::nullopt; } - // Slice a buffer with specific type. - // - // For boolean type and if the offset is not multiple of 8, return a shifted - // copy; otherwise return a BufferView into the original buffer (with shared - // ownership of original buffer). - static BufferPtr sliceBuffer( - const Type&, - const BufferPtr&, - vector_size_t offset, - vector_size_t length, - memory::MemoryPool*); - protected: // Returns a brief summary of the vector. The default implementation includes // encoding, type, number of rows and number of nulls.