findepi commented on code in PR #14392:
URL: https://github.com/apache/iceberg/pull/14392#discussion_r2606816070


##########
core/src/main/java/org/apache/iceberg/io/ContentCache.java:
##########
@@ -140,7 +140,7 @@ public void invalidate(String key) {
   }
 
   /**
-   * @deprecated since 1.7.0, will be removed in 2.0.0; This method does only 
best-effort
+   * @deprecated since 1.7.0, will be removed in 1.12.0; This method does only 
best-effort

Review Comment:
   > Do you know any alternative way to invalidate all entries in the cache?
   
   Depends on the goal.
   if you invalidate just to reduce memory usage (rare), this method is fine
   if you invalidate because something changed and all values needs to be 
recomputed (including those in flight), then there is no ready to use solution. 
   
   In trino we have additional layer on top of Guava caches that solves this 
problem. Here we use caffeine, but last time i checked, it had the same 
invalidation race problem and the author's feedback was that it was 
fundamentally not solvable.
   thus, if full invalidation is needed, you can either copy code from 
`trino-cache` trino module (or use the code i already extracted 
https://github.com/findepi/evictable-cache)
   
   Here i'd hope that invalidation isn't really needed for anything and we can 
remove the API.



##########
core/src/main/java/org/apache/iceberg/avro/AvroSchemaUtil.java:
##########
@@ -129,7 +129,7 @@ public static Schema pruneColumns(Schema schema, 
Set<Integer> selectedIds) {
   }
 
   /**
-   * @deprecated will be removed in 2.0.0; use applyNameMapping and 
pruneColumns(Schema, Set)
+   * @deprecated will be removed in 1.12.0; use applyNameMapping and 
pruneColumns(Schema, Set)

Review Comment:
   did the deprecation removal rules change?
   it looks like we considered not ok to remove a public API in a minor update, 
and now we conclude it's ok.
   
   has this been discussed somewhere already?



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