ivandika3 commented on code in PR #11365:
URL: https://github.com/apache/ozone/pull/11365#discussion_r4180435926
##########
hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/S3SecretManager.java:
##########
@@ -102,6 +105,7 @@ default void updateCache(String accessId, S3SecretValue
secret) {
if (cache != null) {
LOG.info("Updating cache for accessId/user: {}.", accessId);
cache.put(accessId, secret);
+ TableCacheUpdateTracker.recordCacheUpdate(S3_SECRET_TABLE);
Review Comment:
The `S3SecretManager` uses table cache, but the implementation does not use
the unified `TypedTable`, probably because it supports both external S3 secret
store (i.e. `VaultSecretStore`) and embedded (OM RocksDB), but Ozone table
mechanisms only support RocksDB (`TypedTable` uses `RDBTable` as the underlying
store).
There is also cache related cleanup logic in `OzoneManagerDoubleBuffer` just
for `S3_SECRET_TABLE` which I think it kind of hacky since it has already been
supported by the OM `TableCache`. Technically, it should be possible to unify
it by making the `S3SecretCache` to be a `TableCache`, but this means that we
might need to make OM to generalize the table cache and store implementation
API (where the store can support other remote store like `VaultStore` or even
things like remote KV store which means that OM only stores in-memory cache
similar to QiHoo OM architecture), which is going to be quite involved.
--
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]