dimas-b commented on code in PR #4269:
URL: https://github.com/apache/polaris/pull/4269#discussion_r3235587707


##########
polaris-core/src/main/java/org/apache/polaris/core/persistence/LocalPolarisMetaStoreManagerFactory.java:
##########
@@ -161,6 +162,13 @@ public synchronized TransactionalPersistence 
getOrCreateSession(RealmContext rea
     return sessionSupplierMap.get(realmContext.getRealmIdentifier()).get();
   }
 
+  @Override
+  public synchronized IdempotencyPersistence getOrCreateIdempotencyPersistence(
+      RealmContext realmContext) {
+    return idempotencyPersistenceMap.computeIfAbsent(
+        realmContext.getRealmIdentifier(), k -> new 
InMemoryIdempotencyPersistence());

Review Comment:
   I'm not sure this is correct. A `LocalPolarisMetaStoreManagerFactory` may 
have sub-classes that are not "in memory" (e.g. in downstream projects).
   
   While overriding this method is possible in such cases, the default 
behaviour would not be correct.
   
   This is another point for introducing a separate factory for 
`IdempotencyPersistence`.



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