If you call setDataVector during initialize, there must be a followed up copyListEntryAndBufferMetaData at runtime. TODO(Xiyang): try to merge setDataVector & copyListEntryAndBufferMetaData
| 200 | // copyListEntryAndBufferMetaData at runtime. |
| 201 | // TODO(Xiyang): try to merge setDataVector & copyListEntryAndBufferMetaData |
| 202 | static void setDataVector(const ValueVector* vector, std::shared_ptr<ValueVector> dataVector) { |
| 203 | DASSERT(validateType(*vector)); |
| 204 | auto& listBuffer = getAuxBufferUnsafe(*vector); |
| 205 | listBuffer.setDataVector(std::move(dataVector)); |
| 206 | } |
| 207 | static void copyListEntryAndBufferMetaData(ValueVector& vector, |
| 208 | const SelectionVector& selVector, const ValueVector& other, |
| 209 | const SelectionVector& otherSelVector); |