snazy commented on PR #1339:
URL: https://github.com/apache/polaris/pull/1339#issuecomment-3197452530

   I think this change needs attention, as it addresses data race conditions in 
Apache Polaris.
   
   This cache is sadly not just used as a "dumb but easy to reason about"  
read-through-cache, but rather modified by call sites based on certain 
conditions. That leaves quite some room for race conditions.
   
   The purpose of a cache is IMO to remove load from something, the backend 
database in this case. But to do its jobs "right", call sites have to query the 
database and compare the cached state with that of the database.
   
   The problems are orthogonal, but both the race conditions and database load 
are real for every user of Apache Polaris, who all access the backend database 
directly. If someone else chooses to use a different persistence architecture, 
it's up to them to reason about a cache that matches their specific needs.


-- 
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: issues-unsubscr...@polaris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to