jayshrivastava opened a new pull request, #25579:
URL: https://github.com/apache/datafusion/pull/25579
The fix prevents one aggregate’s filter from discarding rows that another
aggregate still needs in dynamic filters. Example:
Query: `MIN(a), MAX(a), MIN(b), MAX(b)`
```
First batch: (1, NULL), (8, NULL)
|
v
a has bounds [1, 8]
b has no bounds yet
|
+---------+----------+
| |
Before After
| |
a < 1 OR a > 8 filter = true
| |
v v
Next batch: (2, 5), (3, 7)
| |
Both rows rejected Both rows accepted
| |
v v
Result: Now b has bounds [5, 7]
1 8 NULL NULL |
v
Filtering can start:
a < 1 OR a > 8
OR b < 5 OR b > 7
|
v
Correct result: 1 8 5 7
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]