Details
-
Task
-
Status: Open
-
Resolution: Unresolved
-
3.0-Release
-
None
-
None
-
None
-
496
Description
Assume you have a schema like this:
CREATE TABLE t (a INTEGER, b INTEGER CONSTRAINT pk PRIMARY KEY (a,b))
We currently optimize the following to be a series of point gets through our skip scan filter:
SELECT * FROM t WHERE (a,b) IN ((1,2), (3,4), (5,6))
However, we don't to the same for a query like this:
SELECT * FROM t WHERE (a = 1 AND b = 2) OR (a = 3 AND b=4) OR (a=5 AND b=6)
This change would be completely isolated to the the following method on WhereOptimizer.KeyExpressionVisitor:
private KeySlots orKeySlots(OrExpression orExpression, List<KeySlots> childSlots)