You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ozone.apache.org by GitBox <gi...@apache.org> on 2020/05/19 03:16:57 UTC

[GitHub] [hadoop-ozone] bharatviswa504 opened a new pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

bharatviswa504 opened a new pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943


   Call cleanup on tables only when the double buffer has transactions related to tables.
   
   ## What changes were proposed in this pull request?
   
   (Please fill in changes proposed in this fix)
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-3615
   
   ## How was this patch tested?
   
   Existing tests. Will see if I can add any tests.
   


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] xiaoyuyao commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
xiaoyuyao commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r446326983



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketDeleteResponse.java
##########
@@ -19,20 +19,29 @@
 package org.apache.hadoop.ozone.om.response.bucket;
 
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.hadoop.ozone.om.OMMetadataManager;
+import org.apache.hadoop.ozone.om.response.CleanupTableInfo;
 import org.apache.hadoop.ozone.om.response.OMClientResponse;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos
     .OMResponse;
 import org.apache.hadoop.hdds.utils.db.BatchOperation;
 
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for DeleteBucket request.
  */
+@CleanupTableInfo(cleanupTables = {BUCKET_TABLE})
 public final class OMBucketDeleteResponse extends OMClientResponse {
 
+  private static final List<String> OPERATED_TABLES =

Review comment:
       Should this be removed after we take the annotation? 




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#issuecomment-650426788


   Thank You @xiaoyuyao for the review.


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r442599075



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketCreateResponse.java
##########
@@ -30,11 +32,16 @@
 import javax.annotation.Nullable;
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for CreateBucket request.
  */
 public final class OMBucketCreateResponse extends OMClientResponse {

Review comment:
       Done.




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] codecov-commenter commented on pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
codecov-commenter commented on pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#issuecomment-650355292


   # [Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=h1) Report
   > Merging [#943](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=desc) into [master](https://codecov.io/gh/apache/hadoop-ozone/commit/f8fcc4760b227308c4a72f06f2e35864e69a1f22&el=desc) will **decrease** coverage by `0.10%`.
   > The diff coverage is `73.45%`.
   
   [![Impacted file tree graph](https://codecov.io/gh/apache/hadoop-ozone/pull/943/graphs/tree.svg?width=650&height=150&src=pr&token=5YeeptJMby)](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=tree)
   
   ```diff
   @@             Coverage Diff              @@
   ##             master     #943      +/-   ##
   ============================================
   - Coverage     70.56%   70.45%   -0.11%     
   - Complexity     9427     9445      +18     
   ============================================
     Files           965      969       +4     
     Lines         49063    49321     +258     
     Branches       4803     4833      +30     
   ============================================
   + Hits          34620    34751     +131     
   - Misses        12137    12250     +113     
   - Partials       2306     2320      +14     
   ```
   
   
   | [Impacted Files](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=tree) | Coverage Δ | Complexity Δ | |
   |---|---|---|---|
   | [.../java/org/apache/hadoop/ozone/OzoneConfigKeys.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvY29tbW9uL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9oYWRvb3Avb3pvbmUvT3pvbmVDb25maWdLZXlzLmphdmE=) | `100.00% <ø> (ø)` | `1.00 <0.00> (ø)` | |
   | [...apache/hadoop/hdds/server/http/BaseHttpServer.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvZnJhbWV3b3JrL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9oYWRvb3AvaGRkcy9zZXJ2ZXIvaHR0cC9CYXNlSHR0cFNlcnZlci5qYXZh) | `77.39% <0.00%> (ø)` | `25.00 <0.00> (ø)` | |
   | [...nt/algorithms/ContainerPlacementPolicyFactory.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvc2VydmVyLXNjbS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL2hkZHMvc2NtL2NvbnRhaW5lci9wbGFjZW1lbnQvYWxnb3JpdGhtcy9Db250YWluZXJQbGFjZW1lbnRQb2xpY3lGYWN0b3J5LmphdmE=) | `83.33% <ø> (ø)` | `2.00 <0.00> (ø)` | |
   | [...src/main/java/org/apache/hadoop/ozone/OmUtils.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL2NvbW1vbi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL296b25lL09tVXRpbHMuamF2YQ==) | `75.20% <ø> (ø)` | `38.00 <0.00> (ø)` | |
   | [...hadoop/ozone/om/protocol/OzoneManagerProtocol.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL2NvbW1vbi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL296b25lL29tL3Byb3RvY29sL096b25lTWFuYWdlclByb3RvY29sLmphdmE=) | `0.00% <ø> (ø)` | `0.00 <0.00> (ø)` | |
   | [...g/apache/hadoop/ozone/om/codec/OMDBDefinition.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9jb2RlYy9PTURCRGVmaW5pdGlvbi5qYXZh) | `0.00% <0.00%> (ø)` | `0.00 <0.00> (?)` | |
   | [...one/om/response/bucket/OMBucketCreateResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXRDcmVhdGVSZXNwb25zZS5qYXZh) | `100.00% <ø> (ø)` | `4.00 <0.00> (ø)` | |
   | [...one/om/response/bucket/OMBucketDeleteResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXREZWxldGVSZXNwb25zZS5qYXZh) | `100.00% <ø> (ø)` | `5.00 <0.00> (ø)` | |
   | [...m/response/bucket/OMBucketSetPropertyResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXRTZXRQcm9wZXJ0eVJlc3BvbnNlLmphdmE=) | `100.00% <ø> (ø)` | `3.00 <0.00> (ø)` | |
   | [...ne/om/response/bucket/acl/OMBucketAclResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvYWNsL09NQnVja2V0QWNsUmVzcG9uc2UuamF2YQ==) | `69.23% <ø> (ø)` | `3.00 <0.00> (ø)` | |
   | ... and [88 more](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree-more) | |
   
   ------
   
   [Continue to review full report at Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=continue).
   > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
   > Powered by [Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=footer). Last update [38a4786...35b07d3](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r442596111



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerDoubleBuffer.java
##########
@@ -286,30 +301,45 @@ private void flushTransactions() {
     }
   }
 
-  private void cleanupCache(List<Long> lastRatisTransactionIndex) {
-    // As now only volume and bucket transactions are handled only called
-    // cleanupCache on bucketTable.
-    // TODO: After supporting all write operations we need to call
-    //  cleanupCache on the tables only when buffer has entries for that table.
-    omMetadataManager.getBucketTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getVolumeTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getUserTable().cleanupCache(lastRatisTransactionIndex);
-
-    //TODO: Optimization we can do here is for key transactions we can only
-    // cleanup cache when it is key commit transaction. In this way all
-    // intermediate transactions for a key will be read from in-memory cache.
-    omMetadataManager.getOpenKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getDeletedTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getS3Table().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getMultipartInfoTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getS3SecretTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getDelegationTokenTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getPrefixTable().cleanupCache(lastRatisTransactionIndex);
+  /**
+   * Set cleanup epoch for the DoubleBufferEntry.
+   * @param entry
+   * @param cleanupEpochs
+   */
+  private void setCleanupEpoch(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    // Add epochs depending on operated tables. In this way
+    // cleanup will be called only when required.
+
+    // As bucket and volume table is full cache add cleanup
+    // epochs only when request is delete to cleanup deleted
+    // entries.
+
+    String opName =
+        entry.getResponse().getOMResponse().getCmdType().name();
+
+    if (opName.toLowerCase().contains(VOLUME) ||
+        opName.toLowerCase().contains(BUCKET)) {
+      if (DeleteBucket.name().equals(opName)
+          || DeleteVolume.name().equals(opName)) {
+        entry.getResponse().operatedTables().forEach(
+            table -> cleanupEpochs.get(table)
+                .add(entry.getTrxLogIndex()));
+      }
+    } else {
+      entry.getResponse().operatedTables().forEach(

Review comment:
       When operattion is of type volume/bucket entry should be added only when deletevolume/deletebucket.  As volume/bucket is full cache, and cache should be cleaned up only for delete operations.

##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerDoubleBuffer.java
##########
@@ -286,30 +301,45 @@ private void flushTransactions() {
     }
   }
 
-  private void cleanupCache(List<Long> lastRatisTransactionIndex) {
-    // As now only volume and bucket transactions are handled only called
-    // cleanupCache on bucketTable.
-    // TODO: After supporting all write operations we need to call
-    //  cleanupCache on the tables only when buffer has entries for that table.
-    omMetadataManager.getBucketTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getVolumeTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getUserTable().cleanupCache(lastRatisTransactionIndex);
-
-    //TODO: Optimization we can do here is for key transactions we can only
-    // cleanup cache when it is key commit transaction. In this way all
-    // intermediate transactions for a key will be read from in-memory cache.
-    omMetadataManager.getOpenKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getDeletedTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getS3Table().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getMultipartInfoTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getS3SecretTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getDelegationTokenTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getPrefixTable().cleanupCache(lastRatisTransactionIndex);
+  /**
+   * Set cleanup epoch for the DoubleBufferEntry.
+   * @param entry
+   * @param cleanupEpochs
+   */
+  private void setCleanupEpoch(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    // Add epochs depending on operated tables. In this way
+    // cleanup will be called only when required.
+
+    // As bucket and volume table is full cache add cleanup
+    // epochs only when request is delete to cleanup deleted
+    // entries.
+
+    String opName =
+        entry.getResponse().getOMResponse().getCmdType().name();
+
+    if (opName.toLowerCase().contains(VOLUME) ||
+        opName.toLowerCase().contains(BUCKET)) {
+      if (DeleteBucket.name().equals(opName)
+          || DeleteVolume.name().equals(opName)) {
+        entry.getResponse().operatedTables().forEach(
+            table -> cleanupEpochs.get(table)
+                .add(entry.getTrxLogIndex()));
+      }
+    } else {
+      entry.getResponse().operatedTables().forEach(

Review comment:
       When operation is of type volume/bucket entry should be added only when deletevolume/deletebucket.  As volume/bucket is full cache, and cache should be cleaned up only for delete operations.




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#issuecomment-650319700


   Thanks for the review @xiaoyuyao 
   Addressed review comments.


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] xiaoyuyao commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
xiaoyuyao commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r446329661



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerDoubleBuffer.java
##########
@@ -353,29 +368,62 @@ private void flushTransactions() {
     }
   }
 
-  private void cleanupCache(List<Long> lastRatisTransactionIndex) {
-    // As now only volume and bucket transactions are handled only called
-    // cleanupCache on bucketTable.
-    // TODO: After supporting all write operations we need to call
-    //  cleanupCache on the tables only when buffer has entries for that table.
-    omMetadataManager.getBucketTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getVolumeTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getUserTable().cleanupCache(lastRatisTransactionIndex);
-
-    //TODO: Optimization we can do here is for key transactions we can only
-    // cleanup cache when it is key commit transaction. In this way all
-    // intermediate transactions for a key will be read from in-memory cache.
-    omMetadataManager.getOpenKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getDeletedTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getMultipartInfoTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getS3SecretTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getDelegationTokenTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getPrefixTable().cleanupCache(lastRatisTransactionIndex);
+  /**
+   * Set cleanup epoch for the DoubleBufferEntry.
+   * @param entry
+   * @param cleanupEpochs
+   */
+  private void setCleanupEpoch(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    // Add epochs depending on operated tables. In this way
+    // cleanup will be called only when required.
+
+    // As bucket and volume table is full cache add cleanup
+    // epochs only when request is delete to cleanup deleted
+    // entries.
+
+    String opName =
+        entry.getResponse().getOMResponse().getCmdType().name();
+
+    if (opName.toLowerCase().contains(VOLUME) ||
+        opName.toLowerCase().contains(BUCKET)) {
+      if (DeleteBucket.name().equals(opName)
+          || DeleteVolume.name().equals(opName)) {
+        addCleanupEntry(entry, cleanupEpochs);
+      }
+    } else {
+      addCleanupEntry(entry, cleanupEpochs);
+    }
+  }
+
+
+  private void addCleanupEntry(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    Class<? extends OMClientResponse> responseClass =
+        entry.getResponse().getClass();
+    CleanupTableInfo cleanupTableInfo =
+        responseClass.getAnnotation(CleanupTableInfo.class);
+    if (cleanupTableInfo != null) {
+      String[] cleanupTables = cleanupTableInfo.cleanupTables();
+      for (String table : cleanupTables) {
+        cleanupEpochs.computeIfAbsent(table, list -> new ArrayList<>())
+            .add(entry.getTrxLogIndex());
+      }
+    } else {
+      // This is to catch early errors, when an new response class missed to
+      // add CleanupTableInfo annotation.
+      throw new RuntimeException("CleanupTableInfo Annotation is missing " +

Review comment:
       Can we add a unit test on response class that misses annotation?




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#issuecomment-646836168


   Thank You @xiaoyuyao for the review.
   Addressed review comments.


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] codecov-commenter edited a comment on pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
codecov-commenter edited a comment on pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#issuecomment-650355292


   # [Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=h1) Report
   > Merging [#943](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=desc) into [master](https://codecov.io/gh/apache/hadoop-ozone/commit/f8fcc4760b227308c4a72f06f2e35864e69a1f22&el=desc) will **decrease** coverage by `0.08%`.
   > The diff coverage is `73.45%`.
   
   [![Impacted file tree graph](https://codecov.io/gh/apache/hadoop-ozone/pull/943/graphs/tree.svg?width=650&height=150&src=pr&token=5YeeptJMby)](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=tree)
   
   ```diff
   @@             Coverage Diff              @@
   ##             master     #943      +/-   ##
   ============================================
   - Coverage     70.56%   70.48%   -0.09%     
   - Complexity     9427     9445      +18     
   ============================================
     Files           965      969       +4     
     Lines         49063    49321     +258     
     Branches       4803     4833      +30     
   ============================================
   + Hits          34620    34762     +142     
   - Misses        12137    12239     +102     
   - Partials       2306     2320      +14     
   ```
   
   
   | [Impacted Files](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=tree) | Coverage Δ | Complexity Δ | |
   |---|---|---|---|
   | [.../java/org/apache/hadoop/ozone/OzoneConfigKeys.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvY29tbW9uL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9oYWRvb3Avb3pvbmUvT3pvbmVDb25maWdLZXlzLmphdmE=) | `100.00% <ø> (ø)` | `1.00 <0.00> (ø)` | |
   | [...apache/hadoop/hdds/server/http/BaseHttpServer.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvZnJhbWV3b3JrL3NyYy9tYWluL2phdmEvb3JnL2FwYWNoZS9oYWRvb3AvaGRkcy9zZXJ2ZXIvaHR0cC9CYXNlSHR0cFNlcnZlci5qYXZh) | `77.39% <0.00%> (ø)` | `25.00 <0.00> (ø)` | |
   | [...nt/algorithms/ContainerPlacementPolicyFactory.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLWhkZHMvc2VydmVyLXNjbS9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL2hkZHMvc2NtL2NvbnRhaW5lci9wbGFjZW1lbnQvYWxnb3JpdGhtcy9Db250YWluZXJQbGFjZW1lbnRQb2xpY3lGYWN0b3J5LmphdmE=) | `83.33% <ø> (ø)` | `2.00 <0.00> (ø)` | |
   | [...src/main/java/org/apache/hadoop/ozone/OmUtils.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL2NvbW1vbi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL296b25lL09tVXRpbHMuamF2YQ==) | `75.20% <ø> (ø)` | `38.00 <0.00> (ø)` | |
   | [...hadoop/ozone/om/protocol/OzoneManagerProtocol.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL2NvbW1vbi9zcmMvbWFpbi9qYXZhL29yZy9hcGFjaGUvaGFkb29wL296b25lL29tL3Byb3RvY29sL096b25lTWFuYWdlclByb3RvY29sLmphdmE=) | `0.00% <ø> (ø)` | `0.00 <0.00> (ø)` | |
   | [...g/apache/hadoop/ozone/om/codec/OMDBDefinition.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9jb2RlYy9PTURCRGVmaW5pdGlvbi5qYXZh) | `0.00% <0.00%> (ø)` | `0.00 <0.00> (?)` | |
   | [...one/om/response/bucket/OMBucketCreateResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXRDcmVhdGVSZXNwb25zZS5qYXZh) | `100.00% <ø> (ø)` | `4.00 <0.00> (ø)` | |
   | [...one/om/response/bucket/OMBucketDeleteResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXREZWxldGVSZXNwb25zZS5qYXZh) | `100.00% <ø> (ø)` | `5.00 <0.00> (ø)` | |
   | [...m/response/bucket/OMBucketSetPropertyResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvT01CdWNrZXRTZXRQcm9wZXJ0eVJlc3BvbnNlLmphdmE=) | `100.00% <ø> (ø)` | `3.00 <0.00> (ø)` | |
   | [...ne/om/response/bucket/acl/OMBucketAclResponse.java](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree#diff-aGFkb29wLW96b25lL296b25lLW1hbmFnZXIvc3JjL21haW4vamF2YS9vcmcvYXBhY2hlL2hhZG9vcC9vem9uZS9vbS9yZXNwb25zZS9idWNrZXQvYWNsL09NQnVja2V0QWNsUmVzcG9uc2UuamF2YQ==) | `69.23% <ø> (ø)` | `3.00 <0.00> (ø)` | |
   | ... and [87 more](https://codecov.io/gh/apache/hadoop-ozone/pull/943/diff?src=pr&el=tree-more) | |
   
   ------
   
   [Continue to review full report at Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=continue).
   > **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
   > `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
   > Powered by [Codecov](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=footer). Last update [38a4786...35b07d3](https://codecov.io/gh/apache/hadoop-ozone/pull/943?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
   


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] xiaoyuyao commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
xiaoyuyao commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r428987972



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketCreateResponse.java
##########
@@ -30,11 +32,16 @@
 import javax.annotation.Nullable;
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for CreateBucket request.
  */
 public final class OMBucketCreateResponse extends OMClientResponse {

Review comment:
       As an alternative, you might achieve the same by adding a class annotation with table name string.




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] xiaoyuyao commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
xiaoyuyao commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r446326983



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketDeleteResponse.java
##########
@@ -19,20 +19,29 @@
 package org.apache.hadoop.ozone.om.response.bucket;
 
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.hadoop.ozone.om.OMMetadataManager;
+import org.apache.hadoop.ozone.om.response.CleanupTableInfo;
 import org.apache.hadoop.ozone.om.response.OMClientResponse;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos
     .OMResponse;
 import org.apache.hadoop.hdds.utils.db.BatchOperation;
 
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for DeleteBucket request.
  */
+@CleanupTableInfo(cleanupTables = {BUCKET_TABLE})
 public final class OMBucketDeleteResponse extends OMClientResponse {
 
+  private static final List<String> OPERATED_TABLES =

Review comment:
       Should this be removed after we add the annotation? 

##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketSetPropertyResponse.java
##########
@@ -18,22 +18,31 @@
 package org.apache.hadoop.ozone.om.response.bucket;
 
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.hadoop.ozone.om.OMMetadataManager;
 import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
+import org.apache.hadoop.ozone.om.response.CleanupTableInfo;
 import org.apache.hadoop.ozone.om.response.OMClientResponse;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos
     .OMResponse;
 import org.apache.hadoop.hdds.utils.db.BatchOperation;
 
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for SetBucketProperty request.
  */
+@CleanupTableInfo(cleanupTables = {BUCKET_TABLE})
 public class OMBucketSetPropertyResponse extends OMClientResponse {
   private OmBucketInfo omBucketInfo;
 
+  private static final List<String> OPERATED_TABLES =

Review comment:
       Same as above.




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] xiaoyuyao commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
xiaoyuyao commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r428987504



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerDoubleBuffer.java
##########
@@ -286,30 +301,45 @@ private void flushTransactions() {
     }
   }
 
-  private void cleanupCache(List<Long> lastRatisTransactionIndex) {
-    // As now only volume and bucket transactions are handled only called
-    // cleanupCache on bucketTable.
-    // TODO: After supporting all write operations we need to call
-    //  cleanupCache on the tables only when buffer has entries for that table.
-    omMetadataManager.getBucketTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getVolumeTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getUserTable().cleanupCache(lastRatisTransactionIndex);
-
-    //TODO: Optimization we can do here is for key transactions we can only
-    // cleanup cache when it is key commit transaction. In this way all
-    // intermediate transactions for a key will be read from in-memory cache.
-    omMetadataManager.getOpenKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getDeletedTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getS3Table().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getMultipartInfoTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getS3SecretTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getDelegationTokenTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getPrefixTable().cleanupCache(lastRatisTransactionIndex);
+  /**
+   * Set cleanup epoch for the DoubleBufferEntry.
+   * @param entry
+   * @param cleanupEpochs
+   */
+  private void setCleanupEpoch(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    // Add epochs depending on operated tables. In this way
+    // cleanup will be called only when required.
+
+    // As bucket and volume table is full cache add cleanup
+    // epochs only when request is delete to cleanup deleted
+    // entries.
+
+    String opName =
+        entry.getResponse().getOMResponse().getCmdType().name();
+
+    if (opName.toLowerCase().contains(VOLUME) ||
+        opName.toLowerCase().contains(BUCKET)) {
+      if (DeleteBucket.name().equals(opName)
+          || DeleteVolume.name().equals(opName)) {
+        entry.getResponse().operatedTables().forEach(
+            table -> cleanupEpochs.get(table)
+                .add(entry.getTrxLogIndex()));
+      }
+    } else {
+      entry.getResponse().operatedTables().forEach(

Review comment:
       What are the difference is the operation is not volume bucket delete? It seems the txIndex are added the same anyway. 




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 commented on a change in pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 commented on a change in pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943#discussion_r446330484



##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/ratis/OzoneManagerDoubleBuffer.java
##########
@@ -353,29 +368,62 @@ private void flushTransactions() {
     }
   }
 
-  private void cleanupCache(List<Long> lastRatisTransactionIndex) {
-    // As now only volume and bucket transactions are handled only called
-    // cleanupCache on bucketTable.
-    // TODO: After supporting all write operations we need to call
-    //  cleanupCache on the tables only when buffer has entries for that table.
-    omMetadataManager.getBucketTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getVolumeTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getUserTable().cleanupCache(lastRatisTransactionIndex);
-
-    //TODO: Optimization we can do here is for key transactions we can only
-    // cleanup cache when it is key commit transaction. In this way all
-    // intermediate transactions for a key will be read from in-memory cache.
-    omMetadataManager.getOpenKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getKeyTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getDeletedTable().cleanupCache(lastRatisTransactionIndex);
-    omMetadataManager.getMultipartInfoTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getS3SecretTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getDelegationTokenTable().cleanupCache(
-        lastRatisTransactionIndex);
-    omMetadataManager.getPrefixTable().cleanupCache(lastRatisTransactionIndex);
+  /**
+   * Set cleanup epoch for the DoubleBufferEntry.
+   * @param entry
+   * @param cleanupEpochs
+   */
+  private void setCleanupEpoch(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    // Add epochs depending on operated tables. In this way
+    // cleanup will be called only when required.
+
+    // As bucket and volume table is full cache add cleanup
+    // epochs only when request is delete to cleanup deleted
+    // entries.
+
+    String opName =
+        entry.getResponse().getOMResponse().getCmdType().name();
+
+    if (opName.toLowerCase().contains(VOLUME) ||
+        opName.toLowerCase().contains(BUCKET)) {
+      if (DeleteBucket.name().equals(opName)
+          || DeleteVolume.name().equals(opName)) {
+        addCleanupEntry(entry, cleanupEpochs);
+      }
+    } else {
+      addCleanupEntry(entry, cleanupEpochs);
+    }
+  }
+
+
+  private void addCleanupEntry(DoubleBufferEntry entry, Map<String,
+      List<Long>> cleanupEpochs) {
+    Class<? extends OMClientResponse> responseClass =
+        entry.getResponse().getClass();
+    CleanupTableInfo cleanupTableInfo =
+        responseClass.getAnnotation(CleanupTableInfo.class);
+    if (cleanupTableInfo != null) {
+      String[] cleanupTables = cleanupTableInfo.cleanupTables();
+      for (String table : cleanupTables) {
+        cleanupEpochs.computeIfAbsent(table, list -> new ArrayList<>())
+            .add(entry.getTrxLogIndex());
+      }
+    } else {
+      // This is to catch early errors, when an new response class missed to
+      // add CleanupTableInfo annotation.
+      throw new RuntimeException("CleanupTableInfo Annotation is missing " +

Review comment:
       TestCleanupTableInfo test is added for this purpose.

##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketDeleteResponse.java
##########
@@ -19,20 +19,29 @@
 package org.apache.hadoop.ozone.om.response.bucket;
 
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.hadoop.ozone.om.OMMetadataManager;
+import org.apache.hadoop.ozone.om.response.CleanupTableInfo;
 import org.apache.hadoop.ozone.om.response.OMClientResponse;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos
     .OMResponse;
 import org.apache.hadoop.hdds.utils.db.BatchOperation;
 
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for DeleteBucket request.
  */
+@CleanupTableInfo(cleanupTables = {BUCKET_TABLE})
 public final class OMBucketDeleteResponse extends OMClientResponse {
 
+  private static final List<String> OPERATED_TABLES =

Review comment:
       Done

##########
File path: hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/bucket/OMBucketSetPropertyResponse.java
##########
@@ -18,22 +18,31 @@
 package org.apache.hadoop.ozone.om.response.bucket;
 
 import java.io.IOException;
+import java.util.Arrays;
+import java.util.List;
 
 import org.apache.hadoop.ozone.om.OMMetadataManager;
 import org.apache.hadoop.ozone.om.helpers.OmBucketInfo;
+import org.apache.hadoop.ozone.om.response.CleanupTableInfo;
 import org.apache.hadoop.ozone.om.response.OMClientResponse;
 import org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos
     .OMResponse;
 import org.apache.hadoop.hdds.utils.db.BatchOperation;
 
 import javax.annotation.Nonnull;
 
+import static org.apache.hadoop.ozone.om.OmMetadataManagerImpl.BUCKET_TABLE;
+
 /**
  * Response for SetBucketProperty request.
  */
+@CleanupTableInfo(cleanupTables = {BUCKET_TABLE})
 public class OMBucketSetPropertyResponse extends OMClientResponse {
   private OmBucketInfo omBucketInfo;
 
+  private static final List<String> OPERATED_TABLES =

Review comment:
       Done




----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org


[GitHub] [hadoop-ozone] bharatviswa504 merged pull request #943: HDDS-3615. Call cleanup on tables only when double buffer has transactions related to tables.

Posted by GitBox <gi...@apache.org>.
bharatviswa504 merged pull request #943:
URL: https://github.com/apache/hadoop-ozone/pull/943


   


----------------------------------------------------------------
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:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: ozone-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: ozone-issues-help@hadoop.apache.org