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]
