NoahKusaba commented on PR #2862:
URL: https://github.com/apache/iceberg-rust/pull/2862#issuecomment-5065032513

   > Thanks for iterating with me! What are we gaining here over using the 
StaticTableProvider now?
   
   Thanks for helping me with this too (still fixing the schema update with 
snapshot id problem), and sorry for responding late.
   
   To answer your question, anyone not using the iceberg-ballista integration 
likely won't benefit from these changes, and they should keep using 
IcebergStaticTableProvider for time-travel reads. After this PR the two resolve 
schemas through the same helper and both refuse writes when pinned, so read 
semantics are identical.
   
   Ballista requires you instantiate one TableProvider, through which queries 
are routed (explained above). This creates two requirements:
   1. The TableProvider needs to carry all the information required to rebuild 
it on the scheduler, which de-serializes the logical plan and re-plans it (this 
PR + another one add the missing requisite information: snapshot-id + 
catalog-configuration). StaticTableProvider is built from an already-loaded 
Table and carries no catalog identity, so there is nothing a codec can rebuild 
it from.
   2. If I want the same instantiated TableProvider to allow for both Scanning 
+ Insert + etc, it needs functional .scan() and .insert_into() implementations. 
StaticTableProvider has the methods (the trait requires them), but its 
.insert_into() unconditionally errors — it holds no catalog handle to commit 
through, so writes are structurally impossible for it.
   


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