Class OMOpenKeysDeleteRequest

All Implemented Interfaces:
RequestAuditor

public class OMOpenKeysDeleteRequest extends OMKeyRequest
Handles requests to move open keys from the open key table to the delete table. Modifies the open key table cache only, and no underlying databases. The delete table cache does not need to be modified since it is not used for client response validation.
  • Constructor Details

    • OMOpenKeysDeleteRequest

      public OMOpenKeysDeleteRequest(org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.OMRequest omRequest, org.apache.hadoop.ozone.om.helpers.BucketLayout bucketLayout)
  • Method Details

    • validateAndUpdateCache

      public OMClientResponse validateAndUpdateCache(OzoneManager ozoneManager, ExecutionContext context)
      Description copied from class: OMClientRequest
      Validate the OMRequest and update the cache. This step should verify that the request can be executed, perform any authorization steps and update the in-memory cache. This step does not persist the changes to the database. To coders and reviewers, CAUTION: Do NOT bring external dependencies into this method, doing so could potentially cause divergence in OM DB states in HA. If you have to, be extremely careful. e.g. Do NOT invoke ACL check inside validateAndUpdateCache, which can use Ranger plugin that relies on external DB.
      Specified by:
      validateAndUpdateCache in class OMClientRequest
      Returns:
      the response that will be returned to the client.
    • updateOpenKeyTableCache

      protected void updateOpenKeyTableCache(OzoneManager ozoneManager, long trxnLogIndex, org.apache.hadoop.ozone.protocol.proto.OzoneManagerProtocolProtos.OpenKeyBucket keysPerBucket, Map<String,org.apache.commons.lang3.tuple.Pair<Long,org.apache.hadoop.ozone.om.helpers.OmKeyInfo>> deletedOpenKeys) throws IOException
      Throws:
      IOException