HeartSaVioR commented on pull request #1432:
URL: https://github.com/apache/iceberg/pull/1432#issuecomment-689166450


   > Have you considered implementing this by using cached tables underneath 
metadata tables? So instead of refreshing each metadata table with a different 
Table instance for the same table, use the same cached Table instance for all 
metadata tables? That seems simpler than using notifications.
   
   I haven't thought about that approach, as I was trying to find less invasive 
changes, like CachingCatalog still doesn't know about the details on the 
metadata tables, though it knows the relation of the 'identifier' between base 
table and metadata tables. I agree your suggestion would be pretty much simpler 
than relying on the listener - I couldn't think of other approach on receiving 
updates on the base table in CachingCatalog, and your suggestion even doesn't 
need to make CachingCatalog be aware of updates.
   
   If I understand correctly, you're suggesting that all metadata tables share 
the cached base table instance (probably tableOps as well). That seems to make 
CachingCatalog no longer blindly delegate to the catalog on loading metadata 
tables, because CachingCatalog should retrieve the Table instance (+ 
TableOperation instance underneath) of the base table instead, and cache it, 
and construct the Table instance for metadata table. Is my understanding 
correct?


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

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