This is an automated email from the ASF dual-hosted git repository. umamahesh pushed a commit to branch HDDS-3816-ec in repository https://gitbox.apache.org/repos/asf/ozone.git
commit 5e42c31933737b657746db39d599c3845829b3c4 Merge: 9e0a2fc 93fb714 Author: Uma Maheswara Rao G <[email protected]> AuthorDate: Wed Jun 23 12:22:13 2021 -0700 Merge branch 'master' into EC branch. .github/workflows/post-commit.yml | 8 +- .../apache/hadoop/hdds/DFSConfigKeysLegacy.java | 12 - .../org/apache/hadoop/hdds/scm/ScmConfigKeys.java | 7 + .../apache/hadoop/hdds/scm/client/ScmClient.java | 21 + .../hadoop/hdds/scm/container/ContainerInfo.java | 4 + .../scm/ha/RetriableWithFailOverException.java} | 20 +- .../org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java | 2 + .../protocol/StorageContainerLocationProtocol.java | 21 + .../hadoop/hdds/security/x509/crl/CRLStatus.java | 87 ++ .../org/apache/hadoop/ozone/OzoneConfigKeys.java | 5 + .../org/apache/hadoop/ozone/audit/SCMAction.java | 3 + .../common/src/main/resources/ozone-default.xml | 51 +- .../apache/hadoop/ozone/HddsDatanodeService.java | 7 +- .../common/impl/StorageLocationReport.java | 55 +- .../container/common/report/ReportPublisher.java | 8 +- .../common/statemachine/DatanodeConfiguration.java | 115 ++- .../common/statemachine/DatanodeStateMachine.java | 4 +- .../common/statemachine/StateContext.java | 131 ++- .../states/endpoint/HeartbeatEndpointTask.java | 5 +- .../states/endpoint/VersionEndpointTask.java | 14 +- .../server/ratis/ContainerStateMachine.java | 74 +- .../transport/server/ratis/XceiverServerRatis.java | 54 +- .../container/common/utils/HddsVolumeUtil.java | 11 - .../container/common/utils/StorageVolumeUtil.java | 51 + .../ozone/container/common/volume/HddsVolume.java | 175 +--- .../container/common/volume/HddsVolumeFactory.java | 93 ++ .../common/volume/ImmutableVolumeSet.java | 8 +- ...ImmutableVolumeSet.java => MetadataVolume.java} | 57 +- .../common/volume/MetadataVolumeFactory.java | 56 ++ .../container/common/volume/MutableVolumeSet.java | 344 +++---- .../container/common/volume/StorageVolume.java | 214 ++++ ...olumeChecker.java => StorageVolumeChecker.java} | 150 ++- .../common/volume/StorageVolumeFactory.java | 60 ++ .../ozone/container/common/volume/VolumeInfo.java | 56 +- .../ozone/container/common/volume/VolumeSet.java | 4 +- .../ozone/container/common/volume/VolumeUsage.java | 30 +- .../container/keyvalue/KeyValueContainer.java | 8 +- .../ozone/container/keyvalue/KeyValueHandler.java | 6 +- .../container/keyvalue/helpers/BlockUtils.java | 2 +- .../container/keyvalue/helpers/ChunkUtils.java | 2 +- .../keyvalue/impl/FilePerBlockStrategy.java | 2 +- .../ozone/container/ozoneimpl/OzoneContainer.java | 51 +- .../container/stream/DirectoryServerSource.java | 6 +- .../container/stream/DirstreamClientHandler.java | 5 + .../container/stream/DirstreamServerHandler.java | 43 +- .../ozone/container/stream/StreamingClient.java | 28 +- .../StreamingException.java} | 23 +- .../ozone/container/stream/StreamingServer.java | 68 +- .../container/common/TestBlockDeletingService.java | 6 +- .../TestSchemaOneBackwardsCompatibility.java | 15 +- .../common/impl/TestContainerPersistence.java | 6 +- .../container/common/impl/TestHddsDispatcher.java | 11 +- .../common/report/TestReportPublisher.java | 2 +- .../statemachine/TestDatanodeConfiguration.java | 55 +- .../common/statemachine/TestStateContext.java | 140 ++- .../states/endpoint/TestHeartbeatEndpointTask.java | 14 +- .../container/common/volume/TestHddsVolume.java | 116 +++ ...eChecker.java => TestStorageVolumeChecker.java} | 40 +- .../container/common/volume/TestVolumeSet.java | 48 +- .../common/volume/TestVolumeSetDiskChecks.java | 70 +- .../keyvalue/TestKeyValueBlockIterator.java | 6 +- .../container/keyvalue/TestKeyValueContainer.java | 9 +- .../keyvalue/TestKeyValueContainerCheck.java | 6 +- .../container/keyvalue/TestKeyValueHandler.java | 5 +- .../container/ozoneimpl/TestContainerReader.java | 11 +- .../container/ozoneimpl/TestOzoneContainer.java | 16 +- .../stream/TestDirstreamClientHandler.java | 139 +++ .../container/stream/TestStreamingServer.java | 48 + .../ozone/container/stream/package-info.java} | 43 +- .../docs/content/design/namespace-support.md | 13 +- .../docs/content/feature/PrefixFSO-Delete.png | Bin 0 -> 253792 bytes .../docs/content/feature/PrefixFSO-Format.png | Bin 0 -> 270550 bytes .../docs/content/feature/PrefixFSO-Rename.png | Bin 0 -> 227851 bytes hadoop-hdds/docs/content/feature/PrefixFSO.md | 75 ++ ...inerLocationProtocolClientSideTranslatorPB.java | 73 ++ .../hdds/security/token/BlockTokenVerifier.java | 8 + .../certificate/authority/CertificateStore.java | 6 + .../hadoop/hdds/security/x509/crl/CRLCodec.java | 0 .../hadoop/hdds/security/x509/crl/CRLInfo.java | 0 .../hdds/security/x509/crl/CRLInfoCodec.java | 0 .../apache/hadoop/hdds/utils/HddsServerUtil.java | 25 + .../x509/certificate/authority/MockCAStore.java | 12 + .../src/main/proto/ScmAdminProtocol.proto | 36 + hadoop-hdds/interface-client/pom.xml | 14 - .../dev-support/findbugsExcludeFile.xml | 3 + hadoop-hdds/interface-server/pom.xml | 56 ++ .../src/main/proto/InterSCMProtocol.proto | 0 .../src/main/proto/SCMUpdateProtocol.proto | 0 .../proto/ScmServerDatanodeHeartbeatProtocol.proto | 4 + .../hadoop/hdds/scm/SCMCommonPlacementPolicy.java | 31 +- .../scm/block/DeletedBlockLogStateManager.java | 3 +- .../scm/block/DeletedBlockLogStateManagerImpl.java | 3 +- .../hdds/scm/block/SCMBlockDeletingService.java | 2 +- .../hdds/scm/container/ReplicationManager.java | 221 ++--- .../scm/container/balancer/ContainerBalancer.java | 101 +- .../balancer/ContainerBalancerConfiguration.java | 28 + .../hdds/scm/crl/CRLStatusReportHandler.java | 87 ++ .../apache/hadoop/hdds/scm/crl/package-info.java} | 43 +- .../apache/hadoop/hdds/scm/events/SCMEvents.java | 10 + .../apache/hadoop/hdds/scm/ha/HASecurityUtils.java | 2 +- .../org/apache/hadoop/hdds/scm/ha/RatisUtil.java | 22 + .../org/apache/hadoop/hdds/scm/ha/SCMContext.java | 60 ++ .../apache/hadoop/hdds/scm/ha/SCMStateMachine.java | 69 +- .../apache/hadoop/hdds/scm/node/DatanodeInfo.java | 14 + .../scm/pipeline/BackgroundPipelineCreatorV2.java | 26 +- .../hdds/scm/pipeline/PipelinePlacementPolicy.java | 15 +- .../hdds/scm/pipeline/PipelineReportHandler.java | 17 +- .../scm/pipeline/PipelineStateManagerV2Impl.java | 12 +- .../hdds/scm/pipeline/SCMPipelineManager.java | 6 +- ...inerLocationProtocolServerSideTranslatorPB.java | 70 ++ .../hdds/scm/safemode/ContainerSafeModeRule.java | 56 +- .../hdds/scm/safemode/DataNodeSafeModeRule.java | 8 + .../scm/safemode/HealthyPipelineSafeModeRule.java | 85 +- .../safemode/OneReplicaPipelineSafeModeRule.java | 70 +- .../hdds/scm/safemode/SCMSafeModeManager.java | 41 +- .../hadoop/hdds/scm/safemode/SafeModeExitRule.java | 9 + .../scm/server/OzoneStorageContainerManager.java | 3 + .../hdds/scm/server/SCMBlockProtocolServer.java | 2 + .../hadoop/hdds/scm/server/SCMCertStore.java | 20 +- .../hdds/scm/server/SCMClientProtocolServer.java | 65 ++ .../scm/server/SCMDatanodeHeartbeatDispatcher.java | 15 +- .../hdds/scm/server/SCMDatanodeProtocolServer.java | 3 + .../hdds/scm/server/StorageContainerManager.java | 24 +- .../java/org/apache/hadoop/hdds/scm/TestUtils.java | 113 ++- .../hadoop/hdds/scm/block/TestBlockManager.java | 2 +- .../hadoop/hdds/scm/container/MockNodeManager.java | 8 + .../hdds/scm/container/TestReplicationManager.java | 3 - .../container/balancer/TestContainerBalancer.java | 20 +- .../algorithms/TestContainerPlacementFactory.java | 11 + .../TestSCMContainerPlacementCapacity.java | 16 +- .../TestSCMContainerPlacementRackAware.java | 22 +- .../TestSCMContainerPlacementRandom.java | 19 +- .../hdds/scm/crl/TestCRLStatusReportHandler.java | 137 +++ .../apache/hadoop/hdds/scm/ha/TestSCMContext.java | 3 + .../hadoop/hdds/scm/node/TestDeadNodeHandler.java | 49 +- .../hdds/scm/node/TestNodeReportHandler.java | 21 +- .../hadoop/hdds/scm/node/TestSCMNodeManager.java | 16 +- .../hdds/scm/node/TestSCMNodeStorageStatMap.java | 11 +- .../hadoop/hdds/scm/node/TestStatisticsUpdate.java | 14 +- .../hdds/scm/pipeline/TestPipelineManagerImpl.java | 5 +- .../scm/pipeline/TestPipelinePlacementPolicy.java | 33 +- .../hdds/scm/pipeline/TestSCMPipelineManager.java | 6 +- .../safemode/TestHealthyPipelineSafeModeRule.java | 6 +- .../TestOneReplicaPipelineSafeModeRule.java | 2 +- .../hdds/scm/safemode/TestSCMSafeModeManager.java | 33 +- .../ozone/container/common/TestEndPoint.java | 30 +- .../hdds/scm/cli/ContainerBalancerCommands.java | 108 +++ .../scm/cli/ContainerBalancerStartSubcommand.java | 66 ++ .../cli/ContainerBalancerStatusSubcommand.java} | 52 +- .../scm/cli/ContainerBalancerStopSubcommand.java} | 23 +- .../hdds/scm/cli/ContainerOperationClient.java | 20 + .../datanode/TestContainerBalancerSubCommand.java | 141 +++ .../apache/hadoop/ozone/client/OzoneBucket.java | 313 +++++- .../hadoop/ozone/client/io/KeyOutputStream.java | 8 + .../ozone/client/protocol/ClientProtocol.java | 5 +- .../apache/hadoop/ozone/client/rpc/RpcClient.java | 13 +- .../hadoop/ozone/client/MockOmTransport.java | 12 + .../hadoop/ozone/client/TestOzoneClient.java | 34 +- .../main/java/org/apache/hadoop/ozone/OmUtils.java | 1 + .../org/apache/hadoop/ozone/om/OMConfigKeys.java | 25 + .../hadoop/ozone/om/exceptions/OMException.java | 4 +- .../hadoop/ozone/om/helpers/OmDirectoryInfo.java | 264 +++++ .../apache/hadoop/ozone/om/helpers/OmKeyArgs.java | 30 +- .../apache/hadoop/ozone/om/helpers/OmKeyInfo.java | 136 ++- .../hadoop/ozone/om/helpers/OmKeyLocationInfo.java | 6 +- .../ozone/om/helpers/OmMultipartKeyInfo.java | 61 +- .../hadoop/ozone/om/helpers/OzoneAclUtil.java | 25 - .../hadoop/ozone/om/helpers/OzoneFSUtils.java | 122 +++ .../ozone/om/helpers/WithParentObjectId.java | 55 ++ ...OzoneManagerProtocolClientSideTranslatorPB.java | 7 +- .../apache/hadoop/ozone/security/acl/OzoneObj.java | 2 + .../hadoop/ozone/security/acl/OzoneObjInfo.java | 20 +- .../hadoop/ozone/security/acl/OzonePrefixPath.java | 67 ++ hadoop-ozone/csi/pom.xml | 2 - .../src/main/compose/compatibility/docker-config | 1 + .../dist/src/main/compose/ozone-csi/docker-config | 1 + .../dist/src/main/compose/ozone-ha/docker-config | 1 + .../dist/src/main/compose/ozone-mr/common-config | 1 + .../dist/src/main/compose/ozone-mr/test.sh | 6 +- .../src/main/compose/ozone-om-ha/docker-config | 1 + .../src/main/compose/ozone-topology/docker-config | 1 + .../src/main/compose/ozone/docker-compose.yaml | 10 + .../dist/src/main/compose/ozone/docker-config | 1 + hadoop-ozone/dist/src/main/compose/ozone/test.sh | 28 +- .../src/main/compose/ozones3-haproxy/docker-config | 1 + .../src/main/compose/ozonesecure-ha/docker-config | 1 + .../src/main/compose/ozonesecure-mr/docker-config | 2 + .../dist/src/main/compose/restart/docker-config | 1 + hadoop-ozone/dist/src/main/compose/test-all.sh | 8 +- .../dist/src/main/compose/upgrade/docker-config | 1 + hadoop-ozone/dist/src/main/compose/upgrade/test.sh | 4 +- .../dist/src/main/compose/xcompat/docker-config | 1 + .../src/main/smoketest/ozonefs/hadoopo3fs.robot | 2 + .../apache/hadoop/ozone/MiniOzoneChaosCluster.java | 3 + .../ozone/TestDirectoryDeletingServiceWithFSO.java | 402 ++++++++ .../hadoop/fs/ozone/TestOzoneFileInterfaces.java | 18 +- .../fs/ozone/TestOzoneFileInterfacesWithFSO.java | 96 ++ .../hadoop/fs/ozone/TestOzoneFileSystem.java | 504 +++++++++- .../fs/ozone/TestOzoneFileSystemPrefixParser.java | 168 ++++ .../fs/ozone/TestOzoneFileSystemWithFSO.java | 479 +++++++++ .../hadoop/fs/ozone/TestRootedOzoneFileSystem.java | 230 ++++- .../fs/ozone/TestRootedOzoneFileSystemWithFSO.java | 160 +++ .../ozone/contract/ITestOzoneContractCreate.java | 26 +- .../ozone/contract/ITestOzoneContractDelete.java | 26 +- .../contract/ITestOzoneContractGetFileStatus.java | 27 +- .../fs/ozone/contract/ITestOzoneContractMkdir.java | 26 +- .../fs/ozone/contract/ITestOzoneContractOpen.java | 27 +- .../ozone/contract/ITestOzoneContractRename.java | 26 +- .../ozone/contract/ITestOzoneContractRootDir.java | 26 +- .../fs/ozone/contract/ITestOzoneContractSeek.java | 1 + .../fs/ozone/contract/ITestOzoneContractUtils.java | 61 ++ .../hadoop/fs/ozone/contract/OzoneContract.java | 13 + .../hadoop/hdds/scm/TestSCMInstallSnapshot.java | 1 + .../apache/hadoop/hdds/scm/TestSCMSnapshot.java | 1 + .../apache/hadoop/ozone/MiniOzoneClusterImpl.java | 14 +- .../ozone/TestContainerBalancerOperations.java | 112 +++ .../hadoop/ozone/TestStorageContainerManager.java | 1 + .../rpc/TestOzoneClientMultipartUploadWithFSO.java | 1024 ++++++++++++++++++++ .../hadoop/ozone/client/rpc/TestReadRetries.java | 60 +- .../commandhandler/TestBlockDeletion.java | 3 +- .../commandhandler/TestCloseContainerHandler.java | 4 + .../commandhandler/TestDeleteContainerHandler.java | 4 + .../container/metrics/TestContainerMetrics.java | 11 +- .../server/TestSecureContainerServer.java | 6 +- .../apache/hadoop/ozone/dn/DatanodeTestUtils.java | 19 +- .../ozone/dn/TestDatanodeLayoutUpgradeTool.java | 4 +- .../TestDatanodeHddsVolumeFailureDetection.java | 26 +- .../TestDatanodeHddsVolumeFailureToleration.java | 20 +- .../ozone/freon/TestHadoopDirTreeGenerator.java | 22 +- .../freon/TestHadoopDirTreeGeneratorWithFSO.java | 47 +- .../hadoop/ozone/fsck/TestContainerMapper.java | 5 + .../apache/hadoop/ozone/om/TestKeyManagerImpl.java | 101 ++ .../hadoop/ozone/om/TestOMStartupWithLayout.java | 197 ++++ .../hadoop/ozone/om/TestObjectStoreWithFSO.java | 722 ++++++++++++++ .../hadoop/ozone/om/TestRecursiveAclWithFSO.java | 338 +++++++ .../ozone/scm/TestSCMInstallSnapshotWithHA.java | 1 + .../ozone/scm/TestStorageContainerManagerHA.java | 1 + .../src/main/proto/OmClientProtocol.proto | 34 + .../apache/hadoop/ozone/om/OMMetadataManager.java | 46 + ...KeyInfoCodec.java => OmDirectoryInfoCodec.java} | 49 +- .../hadoop/ozone/om/codec/OmKeyInfoCodec.java | 8 + .../hadoop/ozone/om/DirectoryDeletingService.java | 286 ++++++ .../org/apache/hadoop/ozone/om/KeyManager.java | 56 ++ .../org/apache/hadoop/ozone/om/KeyManagerImpl.java | 817 +++++++++++++++- .../java/org/apache/hadoop/ozone/om/OMMetrics.java | 17 + .../hadoop/ozone/om/OmMetadataManagerImpl.java | 111 ++- .../org/apache/hadoop/ozone/om/OzoneManager.java | 126 ++- .../hadoop/ozone/om/OzonePrefixPathImpl.java | 164 ++++ .../hadoop/ozone/om/TrashOzoneFileSystem.java | 144 ++- .../hadoop/ozone/om/codec/OMDBDefinition.java | 37 +- .../om/ratis/utils/OzoneManagerRatisUtils.java | 85 ++ .../hadoop/ozone/om/request/OMClientRequest.java | 48 + .../om/request/bucket/OMBucketCreateRequest.java | 34 + .../request/bucket/OMBucketSetPropertyRequest.java | 19 +- .../om/request/file/OMDirectoryCreateRequest.java | 3 + ...t.java => OMDirectoryCreateRequestWithFSO.java} | 334 +++---- .../ozone/om/request/file/OMFileCreateRequest.java | 53 +- .../request/file/OMFileCreateRequestWithFSO.java | 261 +++++ .../ozone/om/request/file/OMFileRequest.java | 745 ++++++++++++++ .../request/key/OMAllocateBlockRequestWithFSO.java | 226 +++++ .../ozone/om/request/key/OMKeyCommitRequest.java | 34 +- ...Request.java => OMKeyCommitRequestWithFSO.java} | 181 ++-- .../ozone/om/request/key/OMKeyCreateRequest.java | 22 +- .../om/request/key/OMKeyCreateRequestWithFSO.java | 232 +++++ .../om/request/key/OMKeyDeleteRequestWithFSO.java | 205 ++++ .../om/request/key/OMKeyRenameRequestWithFSO.java | 301 ++++++ .../hadoop/ozone/om/request/key/OMKeyRequest.java | 280 +++--- .../ozone/om/request/key/OMKeysDeleteRequest.java | 1 - .../om/request/key/OMPathsPurgeRequestWithFSO.java | 64 ++ .../om/request/key/acl/OMKeyAclRequestWithFSO.java | 167 ++++ .../request/key/acl/OMKeyAddAclRequestWithFSO.java | 151 +++ .../key/acl/OMKeyRemoveAclRequestWithFSO.java | 161 +++ .../request/key/acl/OMKeySetAclRequestWithFSO.java | 155 +++ .../S3InitiateMultipartUploadRequest.java | 12 +- ...> S3InitiateMultipartUploadRequestWithFSO.java} | 172 ++-- .../multipart/S3MultipartUploadAbortRequest.java | 56 +- .../S3MultipartUploadAbortRequestWithFSO.java | 89 ++ .../S3MultipartUploadCommitPartRequest.java | 74 +- .../S3MultipartUploadCommitPartRequestWithFSO.java | 87 ++ .../S3MultipartUploadCompleteRequest.java | 401 +++++--- .../S3MultipartUploadCompleteRequestWithFSO.java | 169 ++++ .../file/OMDirectoryCreateResponseWithFSO.java | 103 ++ .../response/file/OMFileCreateResponseWithFSO.java | 94 ++ .../response/key/AbstractOMKeyDeleteResponse.java | 44 + .../om/response/key/OMAllocateBlockResponse.java | 12 + ...se.java => OMAllocateBlockResponseWithFSO.java} | 42 +- .../ozone/om/response/key/OMKeyCommitResponse.java | 15 + ...sponse.java => OMKeyCommitResponseWithFSO.java} | 51 +- .../ozone/om/response/key/OMKeyCreateResponse.java | 14 +- ...sponse.java => OMKeyCreateResponseWithFSO.java} | 56 +- .../ozone/om/response/key/OMKeyDeleteResponse.java | 8 + .../response/key/OMKeyDeleteResponseWithFSO.java | 100 ++ .../ozone/om/response/key/OMKeyRenameResponse.java | 11 + ...sponse.java => OMKeyRenameResponseWithFSO.java} | 62 +- .../response/key/OMPathsPurgeResponseWithFSO.java | 125 +++ .../om/response/key/acl/OMKeyAclResponse.java | 3 + .../response/key/acl/OMKeyAclResponseWithFSO.java | 75 ++ .../S3InitiateMultipartUploadResponseWithFSO.java | 90 ++ .../multipart/S3MultipartUploadAbortResponse.java | 9 +- .../S3MultipartUploadAbortResponseWithFSO.java | 57 ++ .../S3MultipartUploadCommitPartResponse.java | 3 + ...S3MultipartUploadCommitPartResponseWithFSO.java | 69 ++ .../S3MultipartUploadCompleteResponse.java | 41 +- ... S3MultipartUploadCompleteResponseWithFSO.java} | 72 +- .../protocolPB/OzoneManagerRequestHandler.java | 2 + .../ozone/security/acl/OzoneNativeAuthorizer.java | 35 +- ...TestOzoneManagerDoubleBufferWithOMResponse.java | 5 +- .../ozone/om/request/TestOMRequestUtils.java | 192 ++++ .../ozone/om/request/bucket/TestBucketRequest.java | 1 + .../request/bucket/TestOMBucketCreateRequest.java | 2 +- .../bucket/TestOMBucketCreateRequestWithFSO.java | 115 +++ .../bucket/TestOMBucketSetPropertyRequest.java | 10 + .../file/TestOMDirectoryCreateRequestWithFSO.java | 657 +++++++++++++ .../om/request/file/TestOMFileCreateRequest.java | 69 +- .../file/TestOMFileCreateRequestWithFSO.java | 197 ++++ .../om/request/key/TestOMAllocateBlockRequest.java | 44 +- .../key/TestOMAllocateBlockRequestWithFSO.java | 120 +++ .../ozone/om/request/key/TestOMKeyAclRequest.java | 81 +- .../om/request/key/TestOMKeyAclRequestWithFSO.java | 81 ++ .../om/request/key/TestOMKeyCommitRequest.java | 86 +- .../request/key/TestOMKeyCommitRequestWithFSO.java | 114 +++ .../om/request/key/TestOMKeyCreateRequest.java | 53 +- .../request/key/TestOMKeyCreateRequestWithFSO.java | 135 +++ .../om/request/key/TestOMKeyDeleteRequest.java | 40 +- .../request/key/TestOMKeyDeleteRequestWithFSO.java | 139 +++ .../ozone/om/request/key/TestOMKeyRequest.java | 34 +- .../TestS3InitiateMultipartUploadRequest.java | 24 +- ...estS3InitiateMultipartUploadRequestWithFSO.java | 145 +++ .../s3/multipart/TestS3MultipartRequest.java | 60 +- .../TestS3MultipartUploadAbortRequest.java | 32 +- .../TestS3MultipartUploadAbortRequestWithFSO.java | 69 ++ .../TestS3MultipartUploadCommitPartRequest.java | 70 +- ...tS3MultipartUploadCommitPartRequestWithFSO.java | 118 +++ .../TestS3MultipartUploadCompleteRequest.java | 118 ++- ...estS3MultipartUploadCompleteRequestWithFSO.java | 139 +++ .../file/TestOMDirectoryCreateResponseWithFSO.java | 87 ++ .../file/TestOMFileCreateResponseWithFSO.java | 78 ++ .../response/key/TestOMAllocateBlockResponse.java | 37 +- .../key/TestOMAllocateBlockResponseWithFSO.java | 85 ++ .../om/response/key/TestOMKeyCommitResponse.java | 64 +- .../key/TestOMKeyCommitResponseWithFSO.java | 102 ++ .../om/response/key/TestOMKeyCreateResponse.java | 38 +- .../key/TestOMKeyCreateResponseWithFSO.java | 76 ++ .../om/response/key/TestOMKeyDeleteResponse.java | 88 +- .../key/TestOMKeyDeleteResponseWithFSO.java | 84 ++ .../ozone/om/response/key/TestOMKeyResponse.java | 25 +- .../TestS3InitiateMultipartUploadResponse.java | 2 +- ...stS3InitiateMultipartUploadResponseWithFSO.java | 85 ++ .../s3/multipart/TestS3MultipartResponse.java | 182 +++- .../TestS3MultipartUploadAbortResponse.java | 23 +- .../TestS3MultipartUploadAbortResponseWithFSO.java | 85 ++ ...S3MultipartUploadCommitPartResponseWithFSO.java | 226 +++++ ...stS3MultipartUploadCompleteResponseWithFSO.java | 279 ++++++ .../hadoop/ozone/security/acl/TestOzoneObj.java | 79 ++ .../hadoop/ozone/security/acl/TestParentAcl.java | 411 ++++++++ .../ozone/security/acl/TestRequestContext.java | 7 +- .../fs/ozone/BasicOzoneClientAdapterImpl.java | 31 +- .../hadoop/fs/ozone/BasicOzoneFileSystem.java | 37 + .../ozone/BasicRootedOzoneClientAdapterImpl.java | 25 +- .../fs/ozone/BasicRootedOzoneFileSystem.java | 37 + .../apache/hadoop/fs/ozone/OzoneClientAdapter.java | 5 +- hadoop-ozone/ozonefs-shaded/pom.xml | 3 + .../hadoop/ozone/recon/api/NodeEndpoint.java | 17 +- .../ozone/recon/api/types/DatanodeMetadata.java | 15 + .../ozone/recon/fsck/ContainerHealthStatus.java | 6 + .../ozone/recon/fsck/ContainerHealthTask.java | 51 +- .../ozone/recon/scm/ReconContainerManager.java | 18 + .../scm/ReconStorageContainerManagerFacade.java | 11 + .../webapps/recon/ozone-recon-web/api/db.json | 20 + .../src/views/datanodes/datanodes.tsx | 11 + .../hadoop/ozone/recon/api/TestEndpoints.java | 3 +- .../ozone/recon/api/TestOpenContainerCount.java | 424 ++++++++ .../ozone/recon/fsck/TestContainerHealthTask.java | 89 ++ .../hadoop/ozone/s3/endpoint/ObjectEndpoint.java | 5 + .../ozone/audit/parser/common/DatabaseHelper.java | 7 +- .../apache/hadoop/ozone/debug/DatanodeLayout.java | 8 +- .../apache/hadoop/ozone/debug/PrefixParser.java | 236 +++++ .../ozone/debug/container/ContainerCommands.java | 14 +- .../hadoop/ozone/freon/ChunkManagerDiskWrite.java | 4 +- .../ozone/freon/ClosedContainerReplicator.java | 6 +- .../hadoop/ozone/freon/StreamingGenerator.java | 23 +- .../containergenerator/GeneratorDatanode.java | 7 +- .../ozone/genesis/BenchMarkDatanodeDispatcher.java | 4 +- pom.xml | 19 +- 384 files changed, 23085 insertions(+), 3026 deletions(-) diff --cc hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/container/ContainerInfo.java index 2b2489f,549ba2a..f506c74 --- a/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/container/ContainerInfo.java +++ b/hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/container/ContainerInfo.java @@@ -219,17 -217,12 +219,21 @@@ public class ContainerInfo implements C .setContainerID(getContainerID()) .setDeleteTransactionId(getDeleteTransactionId()) .setOwner(getOwner()) - .setSequenceId(getSequenceId()); + .setSequenceId(getSequenceId()) + .setReplicationType(getReplicationType()); + + if (replicationConfig instanceof ECReplicationConfig) { + builder.setEcReplicationConfig(((ECReplicationConfig) replicationConfig) + .toProto()); + } else { + builder.setReplicationFactor( + ReplicationConfig.getLegacyFactor(replicationConfig)); + } + builder.setReplicationFactor( + ReplicationConfig.getLegacyFactor(replicationConfig)); + builder.setReplicationType(replicationConfig.getReplicationType()); + if (getPipelineID() != null) { builder.setPipelineID(getPipelineID().getProtobuf()); } --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
