LuciferYang opened a new issue, #9965:
URL: https://github.com/apache/paimon/issues/9965

   ### Search before asking
   
   - [X] I searched in the [issues](https://github.com/apache/paimon/issues) 
and found nothing similar.
   
   ### Paimon version
   
   master
   
   ### Compute Engine
   
   Spark / core (data-evolution read)
   
   ### Minimal reproduce step
   
   On a data-evolution table where a column is written only by a "dedicated" 
file (a blob or vector-store file that covers just a sub-range of a 
row-id-range group), project only that column. For example, a group has a 
full-range normal file writing `v` over row ids [0, 9] and a blob file writing 
`b` over row ids [0, 2], then `SELECT b`.
   
   ### What doesn't meet your expectations?
   
   The read returns fewer rows than the group contains. 
`DataEvolutionFileStoreScan.pruneByReadType` keeps only the files that write a 
projected (or filter) field, so the kept list holds just the blob file. A 
dedicated file never spans the group's full row-id range, so the reader derives 
the group's logical range from the blob's sub-range [0, 2] and silently drops 
the rows outside it ([3, 9]). The deletion-vector path already keeps a 
full-range anchor normal file unconditionally; the plain read path does not.
   
   Expected: the group always contributes a full-range normal file (the anchor) 
so the reader sees the correct row count and NULL-fills the projected column 
for the rows the dedicated file does not cover.
   
   ### Anything else?
   
   Fix direction: when read-type pruning would leave a group's kept list 
holding only dedicated (blob / vector-store) files, also keep the full-range 
anchor normal file, mirroring what the deletion-vector path already does.
   
   ### Are you willing to submit a PR?
   
   - [X] I'm willing to submit a PR!
   


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

Reply via email to