Revanth14 opened a new issue, #18471:
URL: https://github.com/apache/iceberg/issues/18471

   ### Feature Request / Improvement
   
   ## Problem
   `residual-filter` is optional on `FileScanTask`, and the OpenAPI spec says: 
"If the residual is not present, the client must produce the residual or use 
the original filter." The Java client does neither. 
`RESTFileScanTaskParser.fromJson` passes a null filter to 
`ResidualEvaluator.of`: for partitioned specs, `residualFor()` then fails with 
a NullPointerException in `ExpressionVisitors.visit`, and for unpartitioned 
specs `residual()` returns null. Any server that omits the field hits this.
   
   ## Proposal
   When `residual-filter` is absent, use the scan's filter as the residual, as 
the spec allows.
   
   ## Related
   The dev@ discussion 
(https://lists.apache.org/thread/48pqzgp1x095yn7clrpbh1vb56gfbq1t) suggested 
scan planning responses could omit residuals entirely, since they are expensive 
to compute and rarely applied. This fix is a prerequisite for that, but stands 
on its own.
   
   I'll open a PR for this.
   
   
   
   ### Query engine
   
   None
   
   ### Willingness to contribute
   
   - [x] I can contribute this improvement/feature independently
   - [ ] I would be willing to contribute this improvement/feature with 
guidance from the Iceberg community
   - [ ] I cannot contribute this improvement/feature at this time


-- 
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]

Reply via email to