This is an automated email from the ASF dual-hosted git repository.

ChenSammi pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git

commit cca31ff720604c5571398a919a68c78e9040cd91
Merge: 68c4231f512 aa6377721c2
Author: Sammi Chen <[email protected]>
AuthorDate: Wed Jul 22 14:38:12 2026 +0800

    Merge remote-tracking branch 'origin/HDDS-8342' into master

 .../java/org/apache/hadoop/ozone/OzoneConsts.java  |    1 +
 .../common/src/main/resources/ozone-default.xml    |   75 +
 .../docs/content/design/lifecycle-task-resume.md   |   80 +
 .../design/s3-object-lifecycle-management.md       |   29 +
 hadoop-hdds/docs/content/feature/Lifecycle.md      |  397 +++
 hadoop-hdds/docs/content/feature/Lifecycle.zh.md   |  396 +++
 hadoop-ozone/cli-admin/pom.xml                     |    4 +
 .../ozone/admin/om/LifecycleResumeSubCommand.java  |   73 +
 .../ozone/admin/om/LifecycleStatusSubCommand.java  |   89 +
 .../hadoop/ozone/admin/om/LifecycleSubCommand.java |   47 +
 .../ozone/admin/om/LifecycleSuspendSubCommand.java |   76 +
 .../org/apache/hadoop/ozone/admin/om/OMAdmin.java  |    3 +-
 .../apache/hadoop/ozone/client/OzoneBucket.java    |   34 +
 .../ozone/client/OzoneLifecycleConfiguration.java  |  230 ++
 .../ozone/client/protocol/ClientProtocol.java      |   31 +
 .../apache/hadoop/ozone/client/rpc/RpcClient.java  |   34 +
 .../apache/hadoop/fs/ozone/OzoneTrashPolicy.java   |    2 +-
 .../main/java/org/apache/hadoop/ozone/OmUtils.java |   12 +
 .../org/apache/hadoop/ozone/om/OMConfigKeys.java   |   41 +
 .../hadoop/ozone/om/exceptions/OMException.java    |    3 +
 .../OmLCAbortIncompleteMultipartUpload.java        |  139 +
 .../apache/hadoop/ozone/om/helpers/OmLCAction.java |   59 +
 .../hadoop/ozone/om/helpers/OmLCExpiration.java    |  215 ++
 .../apache/hadoop/ozone/om/helpers/OmLCFilter.java |  235 ++
 .../apache/hadoop/ozone/om/helpers/OmLCRule.java   |  411 +++
 .../ozone/om/helpers/OmLifecycleConfiguration.java |  334 ++
 .../om/helpers/OmLifecycleRuleAndOperator.java     |  214 ++
 .../ozone/om/helpers/OmLifecycleScanState.java     |  255 ++
 .../hadoop/ozone/om/helpers/OmLifecycleUtils.java  |  131 +
 .../hadoop/ozone/om/helpers/OzoneFSUtils.java      |   72 +
 .../ozone/om/protocol/OzoneManagerProtocol.java    |   65 +
 ...OzoneManagerProtocolClientSideTranslatorPB.java |  102 +
 .../apache/hadoop/ozone/om/helpers/OMLCUtils.java  |  131 +
 .../TestOmLCAbortIncompleteMultipartUpload.java    |  171 +
 .../ozone/om/helpers/TestOmLCExpiration.java       |  198 ++
 .../hadoop/ozone/om/helpers/TestOmLCFilter.java    |  159 +
 .../hadoop/ozone/om/helpers/TestOmLCRule.java      |  459 +++
 .../om/helpers/TestOmLifeCycleConfiguration.java   |  266 ++
 .../om/helpers/TestOmLifecycleRuleAndOperator.java |  139 +
 .../ozone/om/helpers/TestOmLifecycleScanState.java |   79 +
 .../src/main/compose/ozonesecure-ha/docker-config  |    6 +
 .../compose/ozonesecure-ha/test-om-lifecycle.sh    |   38 +
 .../main/smoketest/lifecycle/om-lifecycle.robot    |  119 +
 .../src/main/smoketest/s3/bucketlifecycle.robot    |   57 +
 hadoop-ozone/integration-test-s3/pom.xml           |   10 +
 .../hadoop/ozone/s3/awssdk/OzoneS3SDKTests.java    |   11 +
 .../ozone/s3/awssdk/v1/AbstractS3SDKV1Tests.java   |  330 ++
 .../ozone/s3/awssdk/v2/AbstractS3SDKV2Tests.java   |  205 ++
 .../AbstractRootedOzoneFileSystemTestWithFSO.java  |    3 +-
 .../ozone/client/rpc/OzoneRpcClientTests.java      |  197 ++
 .../org/apache/hadoop/ozone/om/TestOmMetrics.java  |   14 +-
 .../ozone/om/service/TestRootedDDSWithFSO.java     |    9 +-
 .../hadoop/ozone/shell/TestOzoneShellHA.java       |   76 +
 .../src/main/proto/OmClientProtocol.proto          |  177 +-
 .../apache/hadoop/ozone/om/OMMetadataManager.java  |   27 +
 .../org/apache/hadoop/ozone/audit/OMAction.java    |    8 +-
 .../org/apache/hadoop/ozone/om/KeyManager.java     |    7 +
 .../org/apache/hadoop/ozone/om/KeyManagerImpl.java |   36 +-
 .../java/org/apache/hadoop/ozone/om/OMMetrics.java |   56 +
 .../hadoop/ozone/om/OmMetadataManagerImpl.java     |   77 +
 .../org/apache/hadoop/ozone/om/OzoneManager.java   |   71 +-
 .../hadoop/ozone/om/TrashOzoneFileSystem.java      |    1 +
 .../hadoop/ozone/om/codec/OMDBDefinition.java      |   47 +-
 .../hadoop/ozone/om/helpers/OMAuditLogger.java     |    1 +
 .../om/ratis/utils/OzoneManagerRatisUtils.java     |   12 +
 .../om/request/bucket/OMBucketDeleteRequest.java   |   12 +-
 .../file/OMDirectoryCreateRequestWithFSO.java      |    4 +-
 .../key/OMDirectoriesPurgeRequestWithFSO.java      |    2 +
 .../om/request/key/OMKeyRenameRequestWithFSO.java  |    8 +
 .../ozone/om/request/key/OMKeysDeleteRequest.java  |  109 +-
 .../om/request/key/OmKeysDeleteRequestWithFSO.java |    6 +-
 .../OMLifecycleConfigurationDeleteRequest.java     |  209 ++
 .../OMLifecycleConfigurationSetRequest.java        |  238 ++
 .../lifecycle/OMLifecycleSaveScanStateRequest.java |   74 +
 .../OMLifecycleSetServiceStatusRequest.java        |  125 +
 .../ozone/om/request/lifecycle/package-info.java   |   21 +
 .../om/response/bucket/OMBucketDeleteResponse.java |   11 +-
 .../om/response/key/OMKeysDeleteResponse.java      |   17 +-
 .../response/key/OMKeysDeleteResponseWithFSO.java  |   15 +-
 .../OMLifecycleConfigurationDeleteResponse.java    |   64 +
 .../OMLifecycleConfigurationSetResponse.java       |   67 +
 .../OMLifecycleSaveScanStateResponse.java          |   51 +
 .../OMLifecycleSetServiceStatusResponse.java       |   46 +
 .../ozone/om/response/lifecycle/package-info.java  |   21 +
 .../ozone/om/service/KeyLifecycleService.java      | 2131 +++++++++++++
 .../om/service/KeyLifecycleServiceMetrics.java     |  196 ++
 .../hadoop/ozone/om/upgrade/OMLayoutFeature.java   |    3 +-
 .../protocolPB/OzoneManagerRequestHandler.java     |   34 +
 .../apache/hadoop/ozone/om/FaultInjectorImpl.java  |   98 +
 .../hadoop/ozone/om/TestOmMetadataManager.java     |    6 +-
 .../om/request/key/TestOMKeysDeleteRequest.java    |  158 +-
 .../key/TestOMKeysDeleteRequestWithFSO.java        |   77 +-
 .../TestOMLifecycleConfigurationDeleteRequest.java |  300 ++
 .../TestOMLifecycleConfigurationRequest.java       |  153 +
 .../TestOMLifecycleConfigurationSetRequest.java    |  390 +++
 .../TestOMLifecycleSaveScanStateRequest.java       |  118 +
 .../ozone/om/response/TestCleanupTableInfo.java    |    2 +
 .../om/response/key/TestOMKeysDeleteResponse.java  |    2 +-
 .../key/TestOMKeysDeleteResponseWithFSO.java       |    2 +-
 ...TestOMLifecycleConfigurationDeleteResponse.java |  117 +
 .../TestOMLifecycleConfigurationSetResponse.java   |  124 +
 .../TestOMLifecycleSaveScanStateResponse.java      |   61 +
 .../ozone/om/service/TestKeyLifecycleService.java  | 3343 ++++++++++++++++++++
 .../org/apache/hadoop/ozone/audit/S3GAction.java   |    3 +
 .../ozone/s3/endpoint/BucketCrudHandler.java       |  127 +
 ...utBucketLifecycleConfigurationUnmarshaller.java |   80 +
 .../s3/endpoint/S3LifecycleConfiguration.java      |  557 ++++
 .../hadoop/ozone/s3/exception/S3ErrorTable.java    |    3 +
 .../org/apache/hadoop/ozone/s3/util/S3Consts.java  |    1 +
 .../hadoop/ozone/client/ClientProtocolStub.java    |   18 +
 .../hadoop/ozone/client/OzoneBucketStub.java       |   68 +
 .../hadoop/ozone/client/OzoneVolumeStub.java       |    1 +
 .../TestS3LifecycleConfigurationDelete.java        |  100 +
 .../endpoint/TestS3LifecycleConfigurationGet.java  |  173 +
 .../endpoint/TestS3LifecycleConfigurationPut.java  |  605 ++++
 115 files changed, 17123 insertions(+), 114 deletions(-)

diff --cc 
hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
index 92fc332a5cc,01e96052b8d..b9183831b89
--- 
a/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
+++ 
b/hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManager.java
@@@ -60,9 -59,9 +60,11 @@@ import static org.apache.hadoop.ozone.o
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_DEFAULT_BUCKET_LAYOUT_DEFAULT;
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_DIR_DELETING_SERVICE_INTERVAL;
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_KEY_DELETING_LIMIT_PER_TASK;
+ import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_KEY_LIFECYCLE_SERVICE_ENABLED;
+ import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_KEY_LIFECYCLE_SERVICE_ENABLED_DEFAULT;
  import static org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_ADDRESS_KEY;
 +import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_BOOTSTRAP_CHECKPOINT_HEADROOM_RATIO_KEY;
 +import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_BOOTSTRAP_MIN_SPACE_KEY;
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_EDEKCACHELOADER_INITIAL_DELAY_MS_DEFAULT;
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_EDEKCACHELOADER_INITIAL_DELAY_MS_KEY;
  import static 
org.apache.hadoop.ozone.om.OMConfigKeys.OZONE_OM_EDEKCACHELOADER_INTERVAL_MS_DEFAULT;


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to