Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(core): incorrect result when execute sql with between | > or < | …
…in or not in #1332 [summary] In tianmu, pack_int uses uint64_t to store level 2 encode, ranges from [0, uint64_max], so when filter data, the conditions(in code named "pv1, pv2") should be also changed to level 2 encode. e.g.: stored value = actually value - min uint64 upv1 = pv1 - local_min; uint64 upv2 = local_max - local_min; the fixes mainly in funciont "EvaluatePack_BetweenInt". For not int (value): when value < local_min, it should be a special case. Only used when rough check = RS_ALL(no numeric data matchs), but table has null, rough check will be reset RS_SOME.
- Loading branch information