!= filter does not return matching series in some cases for TSI index #15859
Closed
Description
For any series held in IndexFiles
in the TSI index, any attempt to retrieve them using a negated equality operator will fail.
For example, suppose you have:
cpu region=west
and you want SELECT * FROM cpu WHERE region != ''
then data associated withcpu region=west
will not be returned if the tag block for that series has been compacted into an IndexFile
.
However, if the tag block is still in a LogFile
, or if the query is region != 'anything_none_empty'
then the data will be returned. In the former case the defect is not triggered within the index code, in the latter case the defective iterator is not used at all.