mirror of
https://github.com/apache/impala.git
synced 2026-01-05 21:00:54 -05:00
We had a too rigorous DCHECK in the code of ColumnStats<StringValue>::Merge(). The DCHECK makes sure that we copy the StringValues into their own buffer from the RowBatch memory. Otherwise their value can be overwritten by following row batches. The internal pointer of empty StringValues are NULL, so there is no need to copy them to another buffer, therefore the DCHECKs are unnecessary and moreover, they can result in crashes. Now we only evaluate the DCHECKs when the corresponding StringValues are not empty strings. Testing: I added an e2e test that inserts a lot of empty strings into a table. Change-Id: I934b53c17720e41231e4d614fbc70f1937e19289 Reviewed-on: http://gerrit.cloudera.org:8080/12636 Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>