BitFunnel
BitFunnel copied to clipboard
Linux and Windows versions of BitFunnelToolTest have different behavior.
This issue is currently causing a CI break. The Windows version looks like it is not finding any matches in some cases (which doesn't fail the test). The Linux version detects false positives (which does fail the test).
Repro:
BitFunnelToolTest --gtest_filter=BitFunnelTool.ThreeToolsEndToEndSequentialInterpreter
Windows output fragment:
67: Processing query " sixty\-five"
True positive count: 1
False positive count: 0
False negative count: 0
True positives: 65
Linux:
67: Processing query " sixty\-five"
True positive count: 128
False positive count: 0
False negative count: 0
True positives: 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192
After a brief investigation, it seems the test never had the same behavior on Windows and Linux, but just happened to pass on Windows even though the behavior was incorrect. The problem was introduced as a fix to issue #382, which just truncates the chunk when running on Windows.