You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ozone.apache.org by sa...@apache.org on 2022/06/02 02:23:21 UTC

[ozone] branch HDDS-3630 updated (a6b5174fbb -> f94b7eb12d)

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

sammichen pushed a change to branch HDDS-3630
in repository https://gitbox.apache.org/repos/asf/ozone.git


    from a6b5174fbb HDDS-6790: Add document for Merge RocksDB in datanode feature. (#3451)
     add cf8eb336ec HDDS-5210. Create GRPC service definition for existing OM protocol (#2375)
     add 3b4e2f58b3 Merge remote-tracking branch 'origin/master' into HDDS-4440-s3-performance
     add 1bce6dfd11 HDDS-5213. Create and a specific OmTransportFactory for GrpcOmTransport (#2485)
     add 46575efe21 HDDS-5211. Start OM Grpc server as part of the OM bootstrap (#2601)
     add a115ebfadc HDDS-5212. Create implementation of OmTransport which uses Grpc (#2580)
     add 1b891fb64f HDDS-5612. Create Ozone s3 authentication token and client authentication transport (#2655)
     add b0f41d67da HDDS-5780. Support s3 authentication on a per request basis (#2721)
     add 1ffbeddcec HDDS 5781. Enable ACLs and support for all s3 file operations. (#2739)
     add c9442d2507 HDDS-5778. Client side unit tests (#2810)
     add 4d0bf19895 Commit for merge requested in PR #2945 to merge Apache Ozone master branch with HDDS-5881 changes INTO HDDS-4400-s3-performance feature branch.  Merge allows s3 gateway gRPC to work with s3 gateway persistent connection changes made in HDDS-5881 found in master branch.
     add abb3637a08 Synchronization added to getOzoneConfiguration for OzoneClientProducer to satisfy CI findbugs.
     add b88a45e994 HDDS-6303.  Merge from master to resolve CI workflow issues & hrpcOmTransport support (#3074)
     add 413d4aade2 HDDS-5544. Update GRPC OmTransport implementation for HA (#2901)
     add 0b0c586fec HDDS-5545. Enable TLS for GRPC OmTransport implementation (#2945)
     add 3f585ab05d HDDS-5648. Track CI workflow tests temporarily disabled for feature branch (#3257)
     add d5ade578f4 Revert "HDDS-5648. Track CI workflow tests temporarily disabled for feature branch (#3257)"
     add d87a7461c1 Revert "HDDS-5545. Enable TLS for GRPC OmTransport implementation (#2945)"
     add d57616e165 Revert "HDDS-5544. Update GRPC OmTransport implementation for HA (#2901)"
     add 2522127b1c Revert "HDDS-6303.  Merge from master to resolve CI workflow issues & hrpcOmTransport support (#3074)"
     add f7b2dbd8f2 Necessary due to CI workflow issue, HDDS-6239, impacting feature branch green builds.  Merging with Master branch impacts HDDS-4440 PRs in progress.  This merge also requires partial changes that were initially in PR for HDDS-5545 to be included.  Namely, the patch to allow switching between OmTransports, GrpcOmTransport and Hadoop3OmTransport through ozone configuration in the OmConfigKeys.
     add e3259164ca Trigger Build
     add 666525e386 Fix integration test for added configuation field for selecting OmTransport for s3 gateway - TestOzoneConfigurationFields (added config key not in xml).
     add 0de099dbde Merge remote-tracking branch 'neils-dev/merge-master-s3g' into HDDS-4440-s3-performance
     add 76e238118d HDDS-5544. Update GRPC OmTransport implementation for HA (#2901)
     add 47e457697e HDDS-5545. Enable TLS for GRPC OmTransport implementation (#2945)
     add 062890ee4b HDDS-5648. Track CI workflow tests temporarily disabled for feature branch (#3257)
     add a2e169393c Merge of master into feature branch to sync the feature branch to the current master.  Resolved conflicts affecting feature versioning PR#3155, propagating s3 exception stack trace HDDS-6257 PR#3066 and performFailover PR#3160.
     add 55d2e06cf2 Fix checkstyle
     add cb2754fd9c HDDS-6555. Container Deletion should not depend on usedBytes being zero (#3276)
     add b077cc6123 HDDS-6561. Modify default bucket layout to LEGACY. (#3296)
     add 9ac8fbce70 HDDS-6614. EC: Fix Datanode block file INCONSISTENCY during heavy load. (#3323)
     add 2876c54b8d HDDS-6405. Selective checks: run rat for readme change (#3156)
     add 497c7a40b8 HDDS-6617. Skip compile(11) for non-java changes (#3324)
     add b8388b096a HDDS-6639. Remove flaky tag for testOMProxyProviderFailoverOnConnectionFailure (#3343)
     add b78adc4c71 HDDS-6620. Gather AuditLog params for S3g (#3325)
     add de9fcca1c3 HDDS-6522. Fix TestOzoneManagerHAWithData#testTwoOMNodesDown (#3341)
     add 2ea9e78bf1 Merge remote-tracking branch 'origin/master' into HDDS-4440-merge
     add edec164302 HDDS-6643. Minor fixes for OM gRPC feature (#3347)
     add db7f691855 HDDS-6651. Restore S3 Gateway config key check in TestOzoneConfigurationFields (#3354)
     add db778fce96 HDDS-6457. Add freon command to run r/w mix workload using FS (#3266)
     add c6314b987c HDDS-6512. Install Hugo during build if needed (#3287)
     add f575e238f8 HDDS-6553. Incorrect timeout when checking balancer iteration result. (#3272)
     add 9d771eb6ed HDDS-6647. Tag some known flaky tests (#3349)
     add b4e8e7ac8d  HDDS-6635. ReportSubCommand should provide a JSON output option (#3344)
     add 73d4876dfe Revert "HDDS-6579. Add commandline argument for Container Info command. (#3306)" (#3336)
     add f49a691b41 HDDS-6626. Exclude Hadoop Thirdparty from shaded Ozone FS jars (#3330)
     add 4476a5be19 HDDS-6632. ReplicationManagerReport should handle unknown metric in protobuf (#3335)
     add d9a623ad72 HDDS-6598. Add a BackgroundPipelineScrubber to scrub all pipelines. (#3337)
     add 1944b2cda9 HDDS-6624. Make ECBlockReconstructedStripeInputStream available for datanodes (#3353)
     add 240002559e Merge remote-tracking branch 'origin/master' into HDDS-4440-s3-performance
     add 124723a4b2 HDDS-6661. TestBackgroundPipelineScrubber.testRun() fails intermittently (#3359)
     add c251258832 HDDS-6658. BackgroundPipelineCreator does not always stop quickly (#3357)
     add 81b6bbad14 HDDS-6641. datanode usageinfo CLI should provide JSON output option (#3356)
     add 59f60089bb HDDS-6653. Small fixes in PipelineStateMap (#3355)
     add d2ac33627a HDDS-6567. Store datanode command queue counts from heartbeat in DatanodeInfo in SCM (#3329)
     add d53cb2c1b7 HDDS-6529. Adding Unit-Test cases for S3-Gateway Object-Endpoint Metrics (#3302)
     add ba9f3425ba HDDS-6684. Move unit tests out of integration (#3375)
     add deb88f35ec HDDS-6586: EC: Implement the EC Reconstruction Command with necessary information (#3345)
     add e70bfd0689 Revert "HDDS-5740. Enable ratis by default for SCM. (#2637)" (#3362)
     add 28170f2672 HDDS-6685. Follower OM crashed when validating S3 auth info. (#3376)
     add c33f6a58d8 HDDS-6640. Node.isAncestor might return incorrect result (#3342)
     add c6cd84cc70 HDDS-6377.  Redundant loop while doing triggerHeartbeat in DatanodeStateMachine (#3139)
     add 71ce98081d HDDS-6673. Reduce OzoneFS test combinations in ozonesecure (#3368)
     add c99fd20da9 HDDS-6589. Add a new replication manager and change the existing one to legacy (#3352)
     add a3f5021b23 HDDS-6669. Exercise OM in ozonescripts environment (#3367)
     add 9ff16ac551 HDDS-6655. Use injected clocks in PipelineManagerImpl and BackgroundPipelineScrubber to ease testing (#3363)
     add f315500c73 HDDS-6551. Introduce StatefulService in scm (#3307)
     add 9055a11216 HDDS-6556. Check quota while allocate and update usedBytes when commit. (#3286)
     add a9df285447 HDDS-6563. Revert "HDDS-5867. Update quota when deleting open keys" (#3282)
     add 3889373070 HDDS-6703. Disable failing testPrepareDownedOM until Ratis upgrade (#3387)
     add d9c56aec00 HDDS-6675. Avoid repeating some S3 tests for different bucket types (#3370)
     add 73e69035e0 HDDS-6659: EC: Add BlockGroupLen info as part of PutBlock in EC Writes for helping in recovery. (#3380)
     add e90a44de2f HDDS-6602. Incorrect logic in PipelineProvider.pickNodesNotUsed (#3318)
     add d2c5631d2f HDDS-6716. Adopt RATIS-1560 (#3394)
     add 6e0c85eb43 HDDS-6715. Avoid using GrpcClientProtocolService.LOG (#3393)
     add d4d8e3c4e9 HDDS-6666. Make Hugo markdown image syntax add responsive image class (#3364)
     add ff351025bc HDDS-6709. Fix bucket usedBytes while versioning is true. (#3388)
     add 1419799bad HDDS-6678. Use secure random in production code (#3374)
     add bfc361e1b8 HDDS-6507. Spotbugs transitive dependencies may result in NoClassDefFound error (#3236)
     add a32549cbc1 HDDS-6708. [FSO] Make normalize keyPath on key rename request (#3386)
     add 88b5e854be HDDS-6400. EC: Refactor ECKeyOutputStream for better code reuse (#3372)
     add bccb8c2c83 HDDS-6679. Further splits integration tests (#3373)
     add 5459b49538 HDDS-6720. Add a function to get bucket layout info in Request Validators (#3395)
     add 91757d5145 HDDS-6734. ozone admin pipeline list CLI is not backward compatible (#3406)
     add 9f0766ecf1 HDDS-6619. Add freon command to run r/w mix workload using ObjectStore APIs (#3383)
     add 6edcc13900 HDDS-6680. Pre-Finalize behaviour for Bucket Layout Feature. (#3377)
     add 86ffd94735 HDDS-6704. EC: ReplicationManager - create version of ContainerReplicaCounts applicable to EC (#3405)
     add 3b66583c6f HDDS-6560. Add general Grafana dashboard (#3285)
     add a6afe188fd HDDS-6630. Explicitly remove node after being chosen (#3332)
     add 4046150447 HDDS-6730. Migrate tests in hdds-tools to JUnit5 (#3402)
     add f131de5f99 HDDS-5919. In kubernetes OM HA has circular dependency on service availability (#3185)
     add 340f5661e4 HDDS-6731. Migrate simple tests in hdds-server-framework to JUnit5 (#3412)
     add 690b3cd338 HDDS-6748. Intermittent timeout in TestECBlockReconstructedInputStream#testReadDataWithUnbuffer (#3416)
     add ed470082e6 HDDS-6742. Audit operation category mismatch (#3407)
     add 71b4feb0ba HDDS-6657. Improve Ozone integrated Ranger configuration instructions (#3365)
     add fb0917328b HDDS-6749. SCM includes itself as peer in addSCM request (#3413)
     add 5ba03daab7 HDDS-6750. Migrate simple tests in hdds-server-scm to JUnit5 (#3417)
     add 44cf924f4d HDDS-6660: EC: Add the DN side Reconstruction Handler class. (#3399)
     add e169d71467 HDDS-6737. Migrate parameterized tests in hdds-server-framework to JUnit5 (#3414)
     add a26ad30f6b HDDS-6596. EC: Support ListBlock from CoordinatorDN (#3410)
     add f328aa033b HDDS-6491. Support FSO keys in getExpiredOpenKeys (#3226)
     add 1067d353c0 HDDS-6650. S3MultipartUpload support update bucket usedNamespace. (#3404)
     add d5e2b758f0 HDDS-6738. Migrate tests with rules in hdds-server-framework to JUnit5 (#3415)
     add 78a018814c HDDS-6744. EC: ReplicationManager - create ContainerReplicaPendingOps class and integrate with ContainerManager (#3425)
     add d6ece18f28 HDDS-6097. Upgrade to Ratis 2.3.0, gRPC 1.44.0, Netty 4.1.74 (#3433)
     add 6cf05906ef HDDS-6777. Upgrade JUnit 5 to 5.8.2 (#3437)
     add a6994b2d87 HDDS-6787. Bump gson to 2.8.9 (#3441)
     add 2b8c4b7324 HDDS-6779. Register metricSink after initialization in S3 Gateway (#3436)
     add fee0de9dd4 HDDS-6784. Missing close() for two RocksDB table iterators (#3440)
     add 51ee649a15 HDDS-6778. Bump Guava to 31.1 (#3435)
     add be1180f4b1 HDDS-6786. Bad value for metric NumBytesCommittedCount in testContainerStateMachineMetrics (#3443)
     add ddb1fe24ab HDDS-6756. NPE raised by RpcClient if ServiceInfo certificates empty (#3428)
     add c01fc7907a HDDS-6674. Create compat acceptance split (#3369)
     add 4f35293124 HDDS-6765. Get snapshot of write OMLockMetrics (#3427)
     add 377be9644f HDDS-6476. Support FSO in OMOpenKeysDeleteRequest and Response (#3233)
     add 77e53623ac HDDS-6648. Fix the inconsistency between network-topology-default.xml and network-topology-default.yaml(#3350)
     add 1357a33df9 HDDS-6719. Verify build from source release tarball in CI (#3396)
     add 94dd1ea7c5 HDDS-6771. EC: ReplicationManager - make ContainerReplicaPendingOps into a SCM service (#3445)
     add 5ed0e0a9b4 HDDS-6323. Close RocksObject(s). (#3091)
     add ddbe71d3f9 HDDS-6681. Post-Finalize behaviour for Bucket Layout feature. (#3411)
     add 2222be3303 HDDS-6788. Sort Ozone list Status output for FSO buckets. (#3444)
     add 66093e52c6 HDDS-6789. Omit download progress in builds (#3447)
     add fad347c3c0 HDDS-6817. Bump rocksdbjni to 7.2.2 (#3463)
     add 74a301cf06 HDDS-4945. Initial prototype for MultiTenant support for Ozone (#2403)
     add ab84d9ea47 HDDS-5485. Add new OM DB tables for AssignUserToTenant (#2453)
     add c826ec2532 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 9787f70164 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 2c95164bf2 HDDS-5647. [Multi-Tenant] Implement AssignUserToTenant (#2564)
     add e5fb5b02eb HDDS-5476. [Multi-Tenant] Support Ozone s3 authentication with arbitrary accessId that is not same as the kerberos ID (#2635)
     add 85167656ff HDDS-5750. [Multi-Tenant] GetS3Secret should retrieve secret from new tables as well (#2649)
     add 7f818ab446 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 9fc34dc7ff HDDS-5754. [Multi-Tenant] Implement GetUserInfo (#2692)
     add 7d63fe2d1f HDDS-5645. Chroot S3 requests for a tenant to their corresponding volume. (#2697)
     add 8ecff6fd1a HDDS-5776. [Multi-Tenant] Implement AssignTenantAdmin, RevokeTenantAdmin, ListTenant, RevokeAccessID (#2734)
     add dae8c0df17 HDDS-5834 [Multi-Tenant] Implement ListUsersInTenant, Remove in memory maps. (#2759)
     add 72d67018e6 HDDS-5939. [Multi-Tenant] Implement `ozone tenant user getsecret` that does not generate secret when accessId does not exist (#2804)
     add 19116fe1f1 HDDS-5972. [Multi-Tenant] Implement SetSecret: `ozone tenant user setsecret` and `ozone s3 setsecret` (#2845)
     add a19d252f98 HDDS-5942. Move Ranger REST API interactions under same interface as Ranger client. (#2805)
     add 8d1d957ee0 HDDS-6022. [Multi-Tenant] Implement DeleteTenant: `ozone tenant delete` (#2857)
     add f5581ce819 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add bb67e13048 HDDS-6004. Use changes from HDDS-5881 for volume chroot. (#2924)
     add f2fdf04666 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 8d2fb136cd HDDS-6044. [Multi-Tenant] Implement Cross-Tenant Bucket Sharing (#2936)
     add 83a8c5f14b HDDS-6084. [Multi-Tenant] Handle upgrades to version supporting S3 multi-tenancy (#3018)
     add 2e6754f6cc HDDS-6214. [Multi-Tenant] Fix KMS Encryption/Decryption (#3010)
     add edcb2e1927 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 52318302a6 HDDS-6063. [Multi-Tenant] Use VOLUME_LOCK in read and write requests, and some minor refactoring (#3051)
     add ecb685a6cf HDDS-6275. [Multi-Tenant] Add feature documentation and CLI quick start guide (#3095)
     add 43deaa8424 HDDS-6366. [Multi-Tenant] Disallow specifying custom accessId in OzoneManager (#3166)
     add f99130b6f9 HDDS-6396. [Multi-Tenant] Merge and cleanup tenant group/role/policy tables, refactor protobuf messages and `isTenantAdmin` (#3177)
     add c5bd28610a HDDS-6575. [Multi-Tenant] Clean up unused tenantDefaultPolicyName field in CreateTenantRequest protobuf message (#3300)
     add d621c8231c HDDS-6387. [Multi-Tenant] Refactor OMMultiTenantManager and OMTenantRequestHelper (#3264)
     add 9280b67553 HDDS-6375. [Multi-Tenant] Implement tenant request metrics (#3256)
     add 7719e23eec Merge remote-tracking branch 'asf/master' into HDDS-4944
     add f127fa9944 HDDS-6576. [Multi-Tenant] Update documentation around Ranger policy creation on bucket sharing (#3303)
     add 6044ef607d HDDS-6566. [Multi-Tenant] Fix a permission check bug that prevents non-delegated admins from assigning/revoking users to/from the tenant (#3288)
     add 42d30d37f1 HDDS-6625. [Multi-Tenant] Follow-up: Set owner of buckets created via S3 Gateway to actual user (#3327)
     add c55bd0290f HDDS-6612. [Multi-Tenant] Add a config key to enable or disable S3 Multi-Tenancy feature (#3397)
     add f0b3013091 HDDS-6340. [Multi-Tenant] Add tenant CLI option to print results in JSON (#3381)
     add 917b079a61 HDDS-5836. [Multi-Tenant] Use Ranger java client. (#3408)
     add 35043683a6 HDDS-6371. [Multi-Tenant] Provide OM DB to Apache Ranger Sync mechanism (#3131)
     add 92daac20f0 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add dcd17390be HDDS-6701. [Multi-Tenant] Add proper locking between Ranger background sync service and tenant requests; bug fixes (#3450)
     add 1acaa82f34 Merge remote-tracking branch 'asf/master' into HDDS-4944
     add 0242a823f9 Merge remote-tracking branch 'asf/HDDS-4944'
     add b3ed6f403e HDDS-6816. SCMContainerPlacementRackScatter should use original required node num to validate placement policy (#3462)
     add 948249635c HDDS-6780. Bump axios to 0.21.4 (#3438)
     add f51a0d543f HDDS-6804. use common backgroundScmService for backgroundPipelieScruber (#3459)
     add 3a4d2d4723 HDDS-6768. Add Volume and Bucket ID to the key path for FSO Objects (#3449)
     add f94b7eb12d Merge remote-tracking branch 'origin/HDDS-3630'

No new revisions were added by this update.

Summary of changes:
 .github/workflows/post-commit.yml                  |   69 +-
 dev-support/annotations/pom.xml                    |    4 +-
 dev-support/ci/selective_ci_checks.bats            |   32 +-
 dev-support/ci/selective_ci_checks.sh              |   28 +-
 hadoop-hdds/client/pom.xml                         |    4 +
 .../hadoop/hdds/scm/client/HddsClientUtils.java    |    5 +-
 .../hdds/scm/storage/ECBlockOutputStream.java      |   24 +
 .../ozone/client/io/BadDataLocationException.java  |    0
 .../ozone/client/io/BlockInputStreamFactory.java   |    4 +-
 .../client/io/BlockInputStreamFactoryImpl.java     |    4 +-
 .../hadoop/ozone/client/io/ECBlockInputStream.java |   12 +-
 .../ozone/client/io/ECBlockInputStreamFactory.java |    4 +-
 .../client/io/ECBlockInputStreamFactoryImpl.java   |    4 +-
 .../ozone/client/io/ECBlockInputStreamProxy.java   |    6 +-
 .../client/io/ECBlockReconstructedInputStream.java |    0
 .../io/ECBlockReconstructedStripeInputStream.java  |    5 +-
 .../client/io/InsufficientLocationsException.java  |    0
 .../hadoop/ozone/client/io/package-info.java       |    0
 .../hadoop/ozone/client/io}/ECStreamTestUtil.java  |   13 +-
 .../io}/TestBlockInputStreamFactoryImpl.java       |   17 +-
 .../ozone/client/io}/TestECBlockInputStream.java   |   41 +-
 .../client/io}/TestECBlockInputStreamProxy.java    |   29 +-
 .../io}/TestECBlockReconstructedInputStream.java   |   14 +-
 .../TestECBlockReconstructedStripeInputStream.java |   37 +-
 hadoop-hdds/common/pom.xml                         |    4 +
 .../java/org/apache/hadoop/hdds/HddsUtils.java     |   20 +
 .../hadoop/hdds/client/ReplicationFactor.java      |    8 +-
 .../hadoop/hdds/freon/FakeClusterTopology.java     |    1 +
 .../org/apache/hadoop/hdds/scm/ScmConfigKeys.java  |   19 +-
 .../scm/container/ReplicationManagerReport.java    |   44 +-
 .../org/apache/hadoop/hdds/scm/ha/SCMHAUtils.java  |    8 +-
 .../apache/hadoop/hdds/scm/net/InnerNodeImpl.java  |    3 +-
 .../org/apache/hadoop/hdds/scm/net/NetUtils.java   |   22 +-
 .../hadoop/hdds/scm/net/NetworkTopologyImpl.java   |   23 +-
 .../java/org/apache/hadoop/hdds/scm/net/Node.java  |   28 +
 .../org/apache/hadoop/hdds/scm/net/NodeImpl.java   |   33 +-
 .../hadoop/hdds/scm/storage/BlockLocationInfo.java |  113 +-
 .../hdds/scm/storage/ContainerProtocolCalls.java   |   46 +
 .../org/apache/hadoop/hdds/server/JsonUtils.java   |    0
 .../org/apache/hadoop/ozone/ClientVersion.java     |    4 +
 .../org/apache/hadoop/ozone/OzoneConfigKeys.java   |   14 +-
 .../java/org/apache/hadoop/ozone/OzoneConsts.java  |   90 +-
 .../java/org/apache/hadoop/ozone/ha/ConfUtils.java |   11 -
 .../apache/hadoop/ozone/util/OzoneNetUtils.java    |  117 +
 .../main/resources/network-topology-default.yaml   |   26 +-
 .../common/src/main/resources/ozone-default.xml    |  108 +-
 .../java/org/apache/hadoop/hdds/TestHddsUtils.java |   39 +-
 .../org/apache/hadoop/hdds/scm/TestSCMHAUtils.java |   54 +
 .../container/TestReplicationManagerReport.java    |   83 +
 .../hdds/scm/net/TestNetworkTopologyImpl.java      |   48 +-
 .../hadoop/hdds/scm/net/TestYamlSchemaLoader.java  |   13 +
 .../org/apache/hadoop/ozone/TestOzoneConsts.java   |   33 +-
 .../apache/hadoop/ozone/ha/TestOzoneNetUtils.java} |   37 +-
 hadoop-hdds/container-service/pom.xml              |    2 +-
 .../apache/hadoop/ozone/HddsDatanodeService.java   |    3 +
 .../common/impl/ContainerLayoutVersion.java        |   10 +-
 .../common/report/ContainerReportPublisher.java    |    1 +
 .../common/report/PipelineReportPublisher.java     |    1 +
 .../common/statemachine/DatanodeStateMachine.java  |   13 +-
 .../ReconstructECContainersCommandHandler.java     |   78 +
 .../states/endpoint/HeartbeatEndpointTask.java     |    2 +-
 .../server/ratis/ContainerStateMachine.java        |    2 +-
 .../ECReconstructionCommandInfo.java               |   82 +
 .../ECReconstructionCoordinatorTask.java           |   52 +
 .../reconstruction/ECReconstructionSupervisor.java |   72 +
 .../container/ec/reconstruction/package-info.java  |   34 +-
 .../ozone/container/keyvalue/KeyValueHandler.java  |   13 +
 .../container/keyvalue/helpers/ChunkUtils.java     |   20 +-
 .../keyvalue/impl/FilePerBlockStrategy.java        |    2 +-
 .../ozoneimpl/ContainerDataScrubberMetrics.java    |    1 +
 .../commands/ReconstructECContainersCommand.java   |  193 ++
 .../states/endpoint/TestHeartbeatEndpointTask.java |    4 +-
 .../TestECReconstructionSupervisor.java            |   53 +
 .../container/keyvalue/TestKeyValueContainer.java  |    8 +-
 .../TestReconstructionECContainersCommands.java    |   97 +
 .../docs/content/feature/Nonrolling-Upgrade.md     |    1 +
 hadoop-hdds/docs/content/feature/PrefixFSO.md      |    4 +-
 .../feature/S3-Multi-Tenancy-Access-Control.md     |   93 +
 .../docs/content/feature/S3-Multi-Tenancy-Setup.md |   93 +
 .../docs/content/feature/S3-Multi-Tenancy.md       |   75 +
 .../docs/content/feature/S3-Tenant-Commands.md     |  458 ++++
 .../docs/content/security/SecurityWithRanger.md    |    7 +
 .../docs/content/security/SecurityWithRanger.zh.md |    9 +-
 hadoop-hdds/docs/dev-support/bin/generate-site.sh  |   12 +-
 .../docs/dev-support/bin/make_images_responsive.py |   57 -
 hadoop-hdds/docs/pom.xml                           |   12 +-
 .../_markup/render-image.html}                     |    3 +-
 .../themes/ozonedoc/layouts/_default/section.html  |    3 +-
 hadoop-hdds/framework/pom.xml                      |    4 +
 .../hadoop/hdds/scm/metadata/SCMMetadataStore.java |    3 +
 .../SCMBlockLocationFailoverProxyProvider.java     |    3 +
 .../client/DefaultCertificateClient.java           |    9 +-
 .../hadoop/hdds/utils/DBCheckpointServlet.java     |    2 +-
 .../hadoop/hdds/utils/db/RDBBatchOperation.java    |   37 +-
 .../hadoop/hdds/utils/db/RDBCheckpointManager.java |   33 +-
 .../hadoop/hdds/utils/db/RDBSstFileLoader.java     |   28 +-
 .../org/apache/hadoop/hdds/utils/db/RDBStore.java  |  183 +-
 .../org/apache/hadoop/hdds/utils/db/RDBTable.java  |  145 +-
 .../apache/hadoop/hdds/utils/db/RocksDatabase.java |  499 ++++
 .../apache/hadoop/hdds/utils/db/StringCodec.java   |    2 +-
 .../apache/hadoop/hdds/utils/db/TableConfig.java   |    7 +-
 .../exceptions/TestSCMExceptionResultCodes.java    |   19 +-
 .../token/TestOzoneBlockTokenIdentifier.java       |   16 +-
 .../hdds/security/token/TokenVerifierTests.java    |    4 +-
 .../certificate/authority/TestDefaultCAServer.java |   40 +-
 .../certificate/authority/TestDefaultProfile.java  |   22 +-
 .../client/TestCertificateClientInit.java          |   73 +-
 .../client/TestDefaultCertificateClient.java       |   60 +-
 .../x509/certificate/utils/TestCRLCodec.java       |   26 +-
 .../certificate/utils/TestCertificateCodec.java    |   41 +-
 .../certificates/TestCertificateSignRequest.java   |   60 +-
 .../x509/certificates/TestRootCertificate.java     |   68 +-
 .../security/x509/keys/TestHDDSKeyGenerator.java   |   14 +-
 .../hdds/security/x509/keys/TestKeyCodec.java      |   49 +-
 .../apache/hadoop/hdds/server/TestJsonUtils.java   |    8 +-
 .../apache/hadoop/hdds/server/TestServerUtils.java |   28 +-
 .../hadoop/hdds/server/events/TestEventQueue.java  |   28 +-
 .../hdds/server/events/TestEventQueueChain.java    |    2 +-
 .../hdds/server/events/TestEventWatcher.java       |   46 +-
 .../hdds/server/http/TestBaseHttpServer.java       |    8 +-
 .../hadoop/hdds/server/http/TestHtmlQuoting.java   |   31 +-
 .../hdds/server/http/TestHttpRequestLog.java       |   16 +-
 .../server/http/TestHttpRequestLogAppender.java    |   12 +-
 .../hadoop/hdds/server/http/TestHttpServer2.java   |    4 +-
 .../hdds/server/http/TestProfileServlet.java       |   39 +-
 .../server/http/TestPrometheusMetricsSink.java     |   47 +-
 .../server/http/TestRatisDropwizardExports.java    |   13 +-
 .../hdds/server/http/TestRatisNameRewrite.java     |   65 +-
 .../hadoop/hdds/utils/db/TestDBConfigFromFile.java |   33 +-
 .../hadoop/hdds/utils/db/TestDBStoreBuilder.java   |  114 +-
 .../apache/hadoop/hdds/utils/db/TestRDBStore.java  |  224 +-
 .../hadoop/hdds/utils/db/TestRDBStoreIterator.java |   20 +-
 .../hadoop/hdds/utils/db/TestRDBTableStore.java    |  137 +-
 .../hdds/utils/db/TestTypedRDBTableStore.java      |   78 +-
 .../hadoop/hdds/utils/db/cache/TestTableCache.java |  237 +-
 hadoop-hdds/interface-client/pom.xml               |    2 +-
 .../src/main/proto/DatanodeClientProtocol.proto    |    5 +-
 hadoop-hdds/interface-server/pom.xml               |    2 +-
 .../src/main/proto/SCMRatisProtocol.proto          |    1 +
 .../proto/ScmServerDatanodeHeartbeatProtocol.proto |   23 +-
 hadoop-hdds/pom.xml                                |    6 +
 hadoop-hdds/server-scm/pom.xml                     |    2 +-
 .../hadoop/hdds/scm/SCMCommonPlacementPolicy.java  |    6 +-
 .../hdds/scm/container/ContainerManagerImpl.java   |   18 +-
 .../hdds/scm/container/ContainerReplicaCount.java  |    3 +-
 .../scm/container/ECContainerReplicaCount.java     |  313 +++
 .../scm/container/balancer/ContainerBalancer.java  |  135 +-
 .../balancer/ContainerBalancerMetrics.java         |   70 +-
 .../ContainerBalancerSelectionCriteria.java        |    2 +-
 .../SCMContainerPlacementRackScatter.java          |   28 +-
 .../container/replication/ContainerReplicaOp.java  |   63 +
 .../replication/ContainerReplicaPendingOps.java    |  227 ++
 ...tivityStatusMXBean.java => InflightAction.java} |   27 +-
 .../LegacyReplicationManager.java}                 |  372 +--
 .../replication/ReplicationActivityStatus.java     |  104 -
 .../container/replication/ReplicationManager.java  |  453 ++++
 .../replication/ReplicationManagerMetrics.java     |    1 -
 .../apache/hadoop/hdds/scm/events/SCMEvents.java   |   10 +
 .../hadoop/hdds/scm/ha/BackgroundSCMService.java   |  208 ++
 .../apache/hadoop/hdds/scm/ha/HASecurityUtils.java |    2 +-
 .../hadoop/hdds/scm/ha/SCMHAManagerImpl.java       |    2 +
 .../hadoop/hdds/scm/ha/SCMHAManagerStub.java       |   17 +-
 .../hadoop/hdds/scm/ha/SCMHANodeDetails.java       |   12 +-
 .../hadoop/hdds/scm/ha/SequenceIdGenerator.java    |   15 +-
 .../apache/hadoop/hdds/scm/ha/StatefulService.java |   80 +
 .../hdds/scm/ha/StatefulServiceStateManager.java   |   61 +
 .../scm/ha/StatefulServiceStateManagerImpl.java    |  124 +
 .../hadoop/hdds/scm/metadata/ByteStringCodec.java  |   69 +
 .../hadoop/hdds/scm/metadata/SCMDBDefinition.java  |   13 +-
 .../hdds/scm/metadata/SCMMetadataStoreImpl.java    |   13 +
 .../hdds/scm/node/CommandQueueReportHandler.java   |   49 +
 .../hdds/scm/node/DatanodeAdminMonitorImpl.java    |    2 +-
 .../apache/hadoop/hdds/scm/node/DatanodeInfo.java  |   61 +
 .../hdds/scm/node/NodeDecommissionManager.java     |    2 +-
 .../apache/hadoop/hdds/scm/node/NodeManager.java   |   20 +
 .../hadoop/hdds/scm/node/SCMNodeManager.java       |   44 +
 .../hadoop/hdds/scm/node/SCMNodeMetrics.java       |   16 +
 .../scm/pipeline/BackgroundPipelineCreator.java    |   28 +-
 .../hadoop/hdds/scm/pipeline/PipelineManager.java  |    3 +-
 .../hdds/scm/pipeline/PipelineManagerImpl.java     |   72 +-
 .../hadoop/hdds/scm/pipeline/PipelineProvider.java |   13 +-
 .../hadoop/hdds/scm/pipeline/PipelineStateMap.java |   16 +-
 .../algorithms/RandomPipelineChoosePolicy.java     |    1 +
 .../scm/server/OzoneStorageContainerManager.java   |    2 +-
 .../hdds/scm/server/SCMBlockProtocolServer.java    |    4 +-
 .../hdds/scm/server/SCMClientProtocolServer.java   |   10 +-
 .../hadoop/hdds/scm/server/SCMConfigurator.java    |    2 +-
 .../scm/server/SCMDatanodeHeartbeatDispatcher.java |   20 +
 .../hdds/scm/server/StorageContainerManager.java   |   71 +-
 .../scm/server/StorageContainerManagerStarter.java |    3 +
 .../main/resources/webapps/scm/scm-overview.html   |    2 +-
 .../org/apache/hadoop/hdds/scm/HddsTestUtils.java  |   18 +-
 .../hdds/scm/TestSCMCommonPlacementPolicy.java     |   75 +
 .../hadoop/hdds/scm/block/TestBlockManager.java    |   12 +-
 .../hadoop/hdds/scm/block/TestDeletedBlockLog.java |   48 +-
 .../command/TestCommandStatusReportHandler.java    |   10 +-
 .../hadoop/hdds/scm/container/MockNodeManager.java |   27 +
 .../hdds/scm/container/SimpleMockNodeManager.java  |   20 +
 .../container/TestCloseContainerEventHandler.java  |   39 +-
 .../scm/container/TestContainerActionsHandler.java |    2 +-
 .../scm/container/TestContainerManagerImpl.java    |  103 +-
 .../scm/container/TestContainerReportHandler.java  |   26 +-
 .../scm/container/TestContainerStateManager.java   |   18 +-
 .../TestIncrementalContainerReportHandler.java     |   34 +-
 .../hdds/scm/container/TestReplicationManager.java |  573 +++--
 .../scm/container/TestUnknownContainerReport.java  |   10 +-
 .../container/balancer/TestContainerBalancer.java  |   55 +-
 .../container/balancer/TestFindTargetStrategy.java |   26 +-
 .../algorithms/TestContainerPlacementFactory.java  |   37 +-
 .../TestContainerPlacementStatusDefault.java       |    8 +-
 .../TestSCMContainerPlacementCapacity.java         |   28 +-
 .../TestSCMContainerPlacementRackScatter.java      |   32 +-
 .../TestSCMContainerPlacementRandom.java           |   36 +-
 .../TestContainerReplicaPendingOps.java            |  226 ++
 .../replication/TestReplicationManagerMetrics.java |   27 +-
 .../states/TestContainerReplicaCount.java          |   12 +-
 .../states/TestECContainerReplicaCount.java        |  432 ++++
 .../hdds/scm/ha/TestBackgroundSCMService.java      |  113 +
 .../hdds/scm/ha/TestReplicationAnnotation.java     |   20 +-
 .../apache/hadoop/hdds/scm/ha/TestSCMContext.java  |   10 +-
 .../hadoop/hdds/scm/ha/TestSCMHAConfiguration.java |   74 +-
 .../hadoop/hdds/scm/ha/TestSCMRatisRequest.java    |   30 +-
 .../hadoop/hdds/scm/ha/TestSCMRatisResponse.java   |   25 +-
 .../hadoop/hdds/scm/ha/TestSCMServiceManager.java  |    6 +-
 .../hdds/scm/ha/TestSequenceIDGenerator.java       |   76 +-
 .../ha/TestStatefulServiceStateManagerImpl.java    |   89 +
 .../hadoop/hdds/scm/ha/io/TestBigIntegerCodec.java |    6 +-
 .../hdds/scm/ha/io/TestX509CertificateCodec.java   |   13 +-
 .../hdds/scm/metadata/TestPipelineIDCodec.java     |    6 +-
 ...ler.java => TestCommandQueueReportHandler.java} |  106 +-
 .../hdds/scm/node/TestContainerPlacement.java      |    7 +-
 .../hdds/scm/node/TestDatanodeAdminMonitor.java    |   17 +-
 .../hadoop/hdds/scm/node/TestDeadNodeHandler.java  |   38 +-
 .../hdds/scm/node/TestNodeDecommissionManager.java |   10 +-
 .../hdds/scm/node/TestNodeReportHandler.java       |   22 +-
 .../hadoop/hdds/scm/node/TestNodeStateManager.java |   25 +-
 .../hadoop/hdds/scm/node/TestSCMNodeManager.java   |   37 +-
 .../hadoop/hdds/scm/node/TestStatisticsUpdate.java |   28 +-
 .../hdds/scm/node/states/TestNodeStateMap.java     |   12 +-
 .../hdds/scm/pipeline/MockPipelineManager.java     |    3 +-
 .../hdds/scm/pipeline/TestECPipelineProvider.java  |   28 +-
 .../scm/pipeline/TestPipelineActionHandler.java    |    2 +-
 .../hdds/scm/pipeline/TestPipelineManagerImpl.java |  249 +-
 .../scm/pipeline/TestPipelineStateManagerImpl.java |   78 +-
 .../hdds/scm/pipeline/TestPipelineStateMap.java    |   12 +-
 .../scm/pipeline/TestRatisPipelineProvider.java    |   36 +-
 .../scm/pipeline/TestSimplePipelineProvider.java   |   44 +-
 .../pipeline/TestWritableECContainerProvider.java  |   18 +-
 .../TestPipelineChoosePolicyFactory.java           |   14 +-
 .../choose/algorithms/TestLeaderChoosePolicy.java  |   26 +-
 .../safemode/TestHealthyPipelineSafeModeRule.java  |   23 +-
 .../TestOneReplicaPipelineSafeModeRule.java        |    6 +-
 .../hdds/scm/safemode/TestSCMSafeModeManager.java  |   21 +-
 .../scm/server/TestSCMBlockProtocolServer.java     |   22 +-
 .../hdds/scm/server/TestSCMContainerMetrics.java   |    2 +-
 .../server/TestSCMDatanodeHeartbeatDispatcher.java |   61 +-
 .../server/TestStorageContainerManagerStarter.java |   18 +-
 .../ozone/container/common/TestEndPoint.java       |   84 +-
 .../placement/TestContainerPlacement.java          |   10 +-
 .../container/placement/TestDatanodeMetrics.java   |    6 +-
 .../testutils/ReplicationNodeManagerMock.java      |   21 +
 .../hadoop/ozone/scm/node/TestSCMNodeMetrics.java  |   31 +-
 .../org/apache/ozone/test/GenericTestUtils.java    |    1 +
 hadoop-hdds/tools/pom.xml                          |    7 +
 .../hdds/scm/cli/container/InfoSubcommand.java     |    7 +-
 .../hdds/scm/cli/container/ReportSubcommand.java   |   12 +
 .../hdds/scm/cli/datanode/UsageInfoSubcommand.java |  162 +-
 .../scm/cli/pipeline/ListPipelinesSubcommand.java  |   73 +-
 .../hdds/scm/cli/container/TestInfoSubCommand.java |   40 +-
 .../scm/cli/container/TestReportSubCommand.java    |   36 +-
 .../datanode/TestContainerBalancerSubCommand.java  |   14 +-
 .../cli/datanode/TestDecommissionSubCommand.java   |   16 +-
 .../scm/cli/datanode/TestListInfoSubcommand.java   |   14 +-
 .../cli/datanode/TestMaintenanceSubCommand.java    |   16 +-
 .../cli/datanode/TestRecommissionSubCommand.java   |   14 +-
 .../scm/cli/datanode/TestUsageInfoSubcommand.java  |  112 +
 .../cli/pipeline/TestListPipelinesSubCommand.java  |   82 +-
 hadoop-ozone/client/pom.xml                        |   10 +
 .../apache/hadoop/ozone/client/ObjectStore.java    |  173 +-
 .../apache/hadoop/ozone/client/OzoneVolume.java    |   30 +
 .../org/apache/hadoop/ozone/client/TenantArgs.java |   82 +
 .../org/apache/hadoop/ozone/client/VolumeArgs.java |    2 +
 .../ozone/client/io/ECBlockOutputStreamEntry.java  |    4 +-
 .../hadoop/ozone/client/io/ECKeyOutputStream.java  |  343 +--
 .../ozone/client/protocol/ClientProtocol.java      |  131 +-
 .../apache/hadoop/ozone/client/rpc/RpcClient.java  |  205 +-
 .../hadoop/ozone/client/TestOzoneECClient.java     |   47 +
 .../ozone/client/io}/TestKeyInputStreamEC.java     |    5 +-
 hadoop-ozone/common/pom.xml                        |   50 +
 .../main/java/org/apache/hadoop/ozone/OmUtils.java |   14 +-
 .../org/apache/hadoop/ozone/audit/OMAction.java    |   15 +-
 .../org/apache/hadoop/ozone/om/OMConfigKeys.java   |   64 +-
 .../hadoop/ozone/om/exceptions/OMException.java    |   16 +-
 .../ozone/om/ha/GrpcOMFailoverProxyProvider.java   |  143 ++
 .../ozone/om/ha/OMFailoverProxyProvider.java       |   22 +-
 .../hadoop/ozone/om/helpers/BucketLayout.java      |   21 +
 .../hadoop/ozone/om/helpers/DeleteTenantState.java |   91 +
 .../hadoop/ozone/om/helpers/OmDBAccessIdInfo.java  |  136 +
 .../hadoop/ozone/om/helpers/OmDBTenantState.java   |  205 ++
 .../ozone/om/helpers/OmDBUserPrincipalInfo.java    |   93 +
 .../hadoop/ozone/om/helpers/OmKeyLocationInfo.java |  212 +-
 .../hadoop/ozone/om/helpers/OmRangerSyncArgs.java  |   67 +
 .../hadoop/ozone/om/helpers/OmTenantArgs.java      |   92 +
 .../hadoop/ozone/om/helpers/OmTenantUserArgs.java  |   36 +-
 .../hadoop/ozone/om/helpers/OmVolumeArgs.java      |   55 +-
 .../hadoop/ozone/om/helpers/S3SecretValue.java     |    1 +
 .../hadoop/ozone/om/helpers/S3VolumeContext.java   |   94 +
 .../hadoop/ozone/om/helpers/TenantStateList.java   |   72 +
 .../ozone/om/helpers/TenantUserInfoValue.java      |   75 +
 .../hadoop/ozone/om/helpers/TenantUserList.java    |   70 +
 .../apache/hadoop/ozone/om/lock/OMLockMetrics.java |    2 +
 .../hadoop/ozone/om/lock/OzoneManagerLock.java     |    4 +
 .../hadoop/ozone/om/multitenant/AccessPolicy.java  |  152 ++
 .../ozone/om/multitenant/AccountNameSpace.java     |   77 +
 .../ozone/om/multitenant/BucketNameSpace.java      |   94 +
 .../ozone/om/multitenant/OzoneOwnerPrincipal.java} |   31 +-
 .../hadoop/ozone/om/multitenant/OzoneTenant.java   |   96 +
 .../om/multitenant/OzoneTenantRolePrincipal.java}  |   35 +-
 .../ozone/om/multitenant/RangerAccessPolicy.java   |  316 +++
 .../apache/hadoop/ozone/om/multitenant/Tenant.java |   59 +
 .../om/multitenant/impl/AccountNameSpaceImpl.java} |   41 +-
 .../impl/SingleVolumeTenantNamespace.java          |   83 +
 .../ozone/om/multitenant/impl/package-info.java    |   21 +-
 .../hadoop/ozone/om/multitenant/package-info.java  |   21 +-
 .../ozone/om/protocol/OzoneManagerProtocol.java    |  126 +
 .../apache/hadoop/ozone/om/protocol/S3Auth.java    |   18 +-
 .../ozone/om/protocolPB/GrpcOmTransport.java       |  329 +++
 .../om/protocolPB/GrpcOmTransportFactory.java      |   21 +-
 .../ozone/om/protocolPB/OmTransportFactory.java    |   34 +-
 ...OzoneManagerProtocolClientSideTranslatorPB.java |  260 +-
 .../ozone/om/exceptions/TestResultCodes.java       |    3 +-
 .../hadoop/ozone/om/lock/TestOzoneManagerLock.java |   23 +
 .../ozone/om/protocolPB/TestS3GrpcOmTransport.java |  222 ++
 .../src/test/resources/log4j.properties            |    0
 hadoop-ozone/csi/pom.xml                           |   17 +-
 hadoop-ozone/dev-support/checks/build.sh           |    2 +-
 hadoop-ozone/dev-support/checks/checkstyle.sh      |    2 +-
 hadoop-ozone/dev-support/checks/findbugs.sh        |    2 +-
 hadoop-ozone/dev-support/checks/junit.sh           |    2 +-
 hadoop-ozone/dev-support/checks/rat.sh             |    2 +-
 .../dashboards/Ozone - Overall Metrics.json        | 2591 ++++++++++++++++++++
 .../dist/src/main/compose/compatibility/test.sh    |    2 +
 .../dist/src/main/compose/ozone-ha/docker-config   |    1 +
 .../src/main/compose/ozone-om-ha/docker-config     |    1 +
 hadoop-ozone/dist/src/main/compose/ozone/README.md |    3 +-
 .../dist/src/main/compose/ozone/docker-config      |    1 +
 .../dist/src/main/compose/ozone/prometheus.yml     |   11 +
 hadoop-ozone/dist/src/main/compose/ozone/test.sh   |    9 +-
 .../dist/src/main/compose/ozonescripts/test.sh     |    1 +
 .../src/main/compose/ozonesecure-ha/docker-config  |    1 +
 .../main/compose/ozonesecure/docker-compose.yaml   |   16 +-
 .../src/main/compose/ozonesecure/docker-config     |   15 +-
 .../ozonesecure/mockserverInitialization.json      |   98 +
 .../dist/src/main/compose/ozonesecure/test.sh      |   12 +-
 .../main/compose/upgrade/compose/ha/docker-config  |    3 -
 .../compose/upgrade/compose/non-ha/docker-config   |    2 +-
 hadoop-ozone/dist/src/main/compose/upgrade/test.sh |    2 +
 .../non-rolling-upgrade/1.1.0-1.2.0/callback.sh    |    4 +-
 .../non-rolling-upgrade/1.2.1-1.3.0/callback.sh    |    2 +-
 hadoop-ozone/dist/src/main/compose/xcompat/test.sh |    2 +
 hadoop-ozone/dist/src/main/license/bin/LICENSE.txt |    4 +
 hadoop-ozone/dist/src/main/license/jar-report.txt  |   30 +-
 .../validate.robot => basic/single_node.robot}     |   17 +-
 .../dist/src/main/smoketest/s3/bucketcreate.robot  |    1 +
 .../dist/src/main/smoketest/s3/bucketdelete.robot  |    1 +
 .../dist/src/main/smoketest/s3/buckethead.robot    |    5 +-
 .../dist/src/main/smoketest/s3/webui.robot         |    1 +
 .../smoketest/security/ozone-secure-tenant.robot   |  138 ++
 .../smoketest/security/ozone-secure-token.robot    |    1 +
 .../dist/src/main/smoketest/upgrade/finalize.robot |    2 +-
 .../dist/src/main/smoketest/upgrade/generate.robot |   31 +-
 .../dist/src/main/smoketest/upgrade/validate.robot |   22 +
 hadoop-ozone/dist/src/shell/ozone/ozone            |    5 +
 .../apache/hadoop/ozone/MiniOzoneChaosCluster.java |    2 +-
 hadoop-ozone/insight/pom.xml                       |    2 +-
 .../ozone/insight/scm/ReplicaManagerInsight.java   |    2 +-
 .../hadoop/fs/ozone/TestOzoneFileSystem.java       |    5 +-
 .../fs/ozone/TestOzoneFileSystemWithFSO.java       |   45 +-
 .../hadoop/fs/ozone/TestRootedOzoneFileSystem.java |  143 +-
 .../fs/ozone/TestRootedOzoneFileSystemWithFSO.java |   15 +-
 .../hadoop/hdds/scm/TestRatisPipelineLeader.java   |   13 +-
 .../metrics/TestSCMContainerManagerMetrics.java    |    2 -
 .../hdds/scm/pipeline/TestMultiRaftSetup.java      |    1 -
 .../safemode/TestSCMSafeModeWithPipelineRules.java |    2 +-
 .../hdds/scm/storage/TestContainerCommandsEC.java  |  255 ++
 .../hadoop/hdds/upgrade/TestHDDSUpgrade.java       |   11 +-
 .../hadoop/ozone/TestOzoneConfigurationFields.java |   15 +-
 .../hadoop/ozone/TestSecureOzoneCluster.java       |   19 +-
 .../hadoop/ozone/TestStorageContainerManager.java  |   91 +-
 .../apache/hadoop/ozone/client/rpc/TestBCSID.java  |    4 +-
 .../rpc/TestContainerReplicationEndToEnd.java      |    2 +-
 .../client/rpc/TestContainerStateMachine.java      |    2 -
 .../rpc/TestContainerStateMachineFailures.java     |    2 -
 .../rpc/TestContainerStateMachineFlushDelay.java   |    2 -
 .../rpc/TestOzoneClientMultipartUploadWithFSO.java |   16 +-
 .../client/rpc/TestOzoneRpcClientAbstract.java     |   79 +-
 .../ozone/client/rpc/read/TestInputStreamBase.java |    2 +-
 .../ozone/container/TestContainerReplication.java  |    2 +-
 .../commandhandler/TestBlockDeletion.java          |    7 +-
 .../commandhandler/TestDeleteContainerHandler.java |   42 +-
 .../ozone/dn/ratis/TestDnRatisLogParser.java       |    2 -
 .../ozone/freon/TestOmBucketReadWriteFileOps.java  |  326 +++
 .../ozone/freon/TestOmBucketReadWriteKeyOps.java   |  306 +++
 .../apache/hadoop/ozone/om/OMUpgradeTestUtils.java |   88 +
 .../org/apache/hadoop/ozone/om/TestListStatus.java |  196 ++
 .../hadoop/ozone/om/TestOMBucketLayoutUpgrade.java |  272 ++
 .../hadoop/ozone/om/TestOMRatisSnapshots.java      |  295 ++-
 .../hadoop/ozone/om/TestOMUpgradeFinalization.java |   52 +-
 .../apache/hadoop/ozone/om/TestObjectStore.java    |   19 +-
 .../hadoop/ozone/om/TestObjectStoreWithFSO.java    |   28 +-
 .../apache/hadoop/ozone/om/TestOzoneManagerHA.java |   16 +-
 .../ozone/om/TestOzoneManagerHAMetadataOnly.java   |    5 +-
 .../ozone/om/TestOzoneManagerHAWithData.java       |    1 -
 .../hadoop/ozone/om/TestOzoneManagerPrepare.java   |    8 +
 ...estMultiTenantAccessAuthorizerRangerPlugin.java |  269 ++
 .../om/multitenant/TestMultiTenantVolume.java      |  264 ++
 .../om/multitenant/TestRangerBGSyncService.java    |  722 ++++++
 .../hadoop/ozone/om/multitenant/package-info.java  |   22 +-
 .../ozone/recon/TestReconWithOzoneManagerFSO.java  |    3 +-
 .../ozone/recon/TestReconWithOzoneManagerHA.java   |    2 -
 .../hadoop/ozone/scm/TestCloseContainer.java       |    2 +-
 .../scm/node/TestDecommissionAndMaintenance.java   |    4 +-
 .../hadoop/ozone/shell/TestOzoneShellHA.java       |   19 +-
 .../hadoop/ozone/shell/TestOzoneTenantShell.java   | 1085 ++++++++
 hadoop-ozone/interface-client/pom.xml              |   30 +-
 .../src/main/proto/OmClientProtocol.proto          |  257 +-
 .../interface-client/src/main/resources/proto.lock |  324 ++-
 .../apache/hadoop/ozone/om/OMMetadataManager.java  |   52 +-
 .../ozone/om/codec/OmDBAccessIdInfoCodec.java      |   57 +
 .../ozone/om/codec/OmDBTenantStateCodec.java       |   57 +
 .../ozone/om/codec/OmDBUserPrincipalInfoCodec.java |   60 +
 hadoop-ozone/ozone-manager/pom.xml                 |   52 +-
 .../hadoop/ozone/om/DirectoryDeletingService.java  |   59 +-
 .../hadoop/ozone/om/GrpcOzoneManagerServer.java    |  140 ++
 .../org/apache/hadoop/ozone/om/KeyManager.java     |   22 +-
 .../org/apache/hadoop/ozone/om/KeyManagerImpl.java |  129 +-
 .../java/org/apache/hadoop/ozone/om/OMMetrics.java |  174 ++
 .../hadoop/ozone/om/OMMultiTenantManager.java      |  321 +++
 .../hadoop/ozone/om/OMMultiTenantManagerImpl.java  | 1149 +++++++++
 .../hadoop/ozone/om/OmMetadataManagerImpl.java     |  202 +-
 .../hadoop/ozone/om/OpenKeyCleanupService.java     |    3 +-
 .../org/apache/hadoop/ozone/om/OzoneAclUtils.java  |   25 +
 .../hadoop/ozone/om/OzoneListStatusHelper.java     |  535 ++++
 .../org/apache/hadoop/ozone/om/OzoneManager.java   |  629 ++++-
 .../hadoop/ozone/om/OzoneManagerServiceGrpc.java   |   98 +
 .../hadoop/ozone/om/OzoneManagerStarter.java       |    3 +
 .../hadoop/ozone/om/S3SecretManagerImpl.java       |   14 +-
 .../java/org/apache/hadoop/ozone/om/TenantOp.java  |   86 +
 .../hadoop/ozone/om/TrashOzoneFileSystem.java      |    4 +
 .../hadoop/ozone/om/codec/OMDBDefinition.java      |   38 +-
 .../apache/hadoop/ozone/om/ha/OMHANodeDetails.java |   12 +-
 .../ozone/om/multitenant/AuthorizerLock.java       |   87 +
 .../ozone/om/multitenant/AuthorizerLockImpl.java   |  186 ++
 .../ozone/om/multitenant/CachedTenantState.java    |   88 +
 .../multitenant/MultiTenantAccessAuthorizer.java   |  282 +++
 .../MultiTenantAccessAuthorizerDummyPlugin.java    |  194 ++
 .../MultiTenantAccessAuthorizerRangerPlugin.java   |  850 +++++++
 .../multitenant/MultiTenantAccessController.java   |  414 ++++
 .../om/multitenant/OMRangerBGSyncService.java      |  844 +++++++
 .../RangerClientMultiTenantAccessController.java   |  323 +++
 .../RangerRestMultiTenantAccessController.java     |  670 +++++
 .../hadoop/ozone/om/multitenant/package-info.java  |   17 +-
 .../ozone/om/ratis/OzoneManagerDoubleBuffer.java   |    7 +-
 .../ozone/om/ratis/OzoneManagerStateMachine.java   |   38 +-
 .../om/ratis/utils/OzoneManagerRatisUtils.java     |   36 +-
 .../hadoop/ozone/om/request/OMClientRequest.java   |   26 +-
 .../om/request/bucket/OMBucketCreateRequest.java   |   29 +-
 .../om/request/bucket/OMBucketDeleteRequest.java   |   34 +
 .../om/request/file/OMDirectoryCreateRequest.java  |   33 +-
 .../file/OMDirectoryCreateRequestWithFSO.java      |   11 +-
 .../ozone/om/request/file/OMFileCreateRequest.java |   39 +-
 .../request/file/OMFileCreateRequestWithFSO.java   |   21 +-
 .../ozone/om/request/file/OMFileRequest.java       |   91 +-
 .../om/request/key/OMAllocateBlockRequest.java     |   48 +-
 .../request/key/OMAllocateBlockRequestWithFSO.java |   34 +-
 ....java => OMDirectoriesPurgeRequestWithFSO.java} |   23 +-
 .../ozone/om/request/key/OMKeyCommitRequest.java   |   74 +-
 .../om/request/key/OMKeyCommitRequestWithFSO.java  |   39 +-
 .../ozone/om/request/key/OMKeyCreateRequest.java   |   33 +-
 .../om/request/key/OMKeyCreateRequestWithFSO.java  |   27 +-
 .../ozone/om/request/key/OMKeyDeleteRequest.java   |   35 +
 .../om/request/key/OMKeyDeleteRequestWithFSO.java  |    8 +-
 .../ozone/om/request/key/OMKeyRenameRequest.java   |   50 +-
 .../om/request/key/OMKeyRenameRequestWithFSO.java  |   14 +-
 .../hadoop/ozone/om/request/key/OMKeyRequest.java  |    6 +-
 .../ozone/om/request/key/OMKeysDeleteRequest.java  |   38 +-
 .../ozone/om/request/key/OMKeysRenameRequest.java  |   35 +
 .../om/request/key/OMOpenKeysDeleteRequest.java    |   29 +-
 .../om/request/key/OmKeysDeleteRequestWithFSO.java |   25 +-
 .../om/request/key/acl/OMKeyAclRequestWithFSO.java |    5 +-
 .../S3InitiateMultipartUploadRequest.java          |   30 +
 .../S3InitiateMultipartUploadRequestWithFSO.java   |   14 +-
 .../multipart/S3MultipartUploadAbortRequest.java   |   29 +
 .../S3MultipartUploadAbortRequestWithFSO.java      |   15 +-
 .../S3MultipartUploadCommitPartRequest.java        |   41 +-
 .../S3MultipartUploadCommitPartRequestWithFSO.java |   13 +-
 .../S3MultipartUploadCompleteRequest.java          |   48 +-
 .../S3MultipartUploadCompleteRequestWithFSO.java   |   13 +-
 .../om/request/s3/security/OMSetSecretRequest.java |  186 ++
 .../om/request/s3/security/S3GetSecretRequest.java |  153 +-
 .../request/s3/security/S3RevokeSecretRequest.java |   17 +-
 .../request/s3/security/S3SecretRequestHelper.java |  107 +
 .../tenant/OMSetRangerServiceVersionRequest.java   |   84 +
 .../s3/tenant/OMTenantAssignAdminRequest.java      |  253 ++
 .../tenant/OMTenantAssignUserAccessIdRequest.java  |  373 +++
 .../request/s3/tenant/OMTenantCreateRequest.java   |  352 +++
 .../request/s3/tenant/OMTenantDeleteRequest.java   |  247 ++
 .../s3/tenant/OMTenantRevokeAdminRequest.java      |  242 ++
 .../tenant/OMTenantRevokeUserAccessIdRequest.java  |  269 ++
 .../ozone/om/request/s3/tenant/package-info.java   |   21 +-
 .../om/request/validation/RequestValidations.java  |    2 +-
 .../om/request/validation/ValidationContext.java   |   24 +-
 .../om/request/volume/OMVolumeDeleteRequest.java   |   10 +
 .../ozone/om/request/volume/OMVolumeRequest.java   |    4 +-
 .../file/OMDirectoryCreateResponseWithFSO.java     |   13 +-
 .../response/file/OMFileCreateResponseWithFSO.java |   12 +-
 .../om/response/key/OMAllocateBlockResponse.java   |   14 +-
 .../key/OMAllocateBlockResponseWithFSO.java        |   10 +-
 .../key/OMDirectoriesPurgeResponseWithFSO.java     |  129 +
 .../ozone/om/response/key/OMKeyCreateResponse.java |    5 -
 .../response/key/OMKeyDeleteResponseWithFSO.java   |   11 +-
 .../response/key/OMKeysDeleteResponseWithFSO.java  |   12 +-
 .../om/response/key/OMOpenKeysDeleteResponse.java  |   23 +-
 .../response/key/OMPathsPurgeResponseWithFSO.java  |  125 -
 .../response/key/acl/OMKeyAclResponseWithFSO.java  |    9 +-
 .../S3InitiateMultipartUploadResponseWithFSO.java  |    9 +-
 ...ecretResponse.java => OMSetSecretResponse.java} |   36 +-
 .../response/s3/security/S3GetSecretResponse.java  |    6 +
 .../tenant/OMSetRangerServiceVersionResponse.java  |   72 +
 .../s3/tenant/OMTenantAssignAdminResponse.java     |   75 +
 .../tenant/OMTenantAssignUserAccessIdResponse.java |  105 +
 .../response/s3/tenant/OMTenantCreateResponse.java |   94 +
 .../response/s3/tenant/OMTenantDeleteResponse.java |   84 +
 .../s3/tenant/OMTenantRevokeAdminResponse.java     |   75 +
 .../tenant/OMTenantRevokeUserAccessIdResponse.java |   93 +
 .../ozone/om/response/s3/tenant/package-info.java  |   21 +-
 .../om/upgrade/DisallowedUntilLayoutVersion.java   |    2 +-
 .../hadoop/ozone/om/upgrade/OMLayoutFeature.java   |    7 +-
 .../ozone/om/upgrade/OMLayoutFeatureAspect.java    |   17 +-
 ...OzoneManagerProtocolServerSideTranslatorPB.java |   19 +-
 .../protocolPB/OzoneManagerRequestHandler.java     |  317 +++
 .../ozone/security/acl/OzoneNativeAuthorizer.java  |    3 +
 .../src/main/resources/META-INF/aop.xml            |   24 +
 .../hadoop/ozone/om/TestAuthorizerLockImpl.java    |  156 ++
 .../ozone/om/TestGrpcOzoneManagerServer.java       |   62 +
 .../hadoop/ozone/om/TestOMMultiTenantManager.java  |  175 ++
 .../ozone/om/TestOMMultiTenantManagerImpl.java     |  159 ++
 .../hadoop/ozone/om/TestOmMetadataManager.java     |  113 +-
 .../hadoop/ozone/om/failover/TestOMFailovers.java  |    2 +-
 .../InMemoryMultiTenantAccessController.java       |  154 ++
 .../TestMultiTenantAccessController.java           |  397 +++
 ...TestOzoneManagerDoubleBufferWithOMResponse.java |    2 +-
 .../ozone/om/request/OMRequestTestUtils.java       |  231 +-
 .../request/TestBucketLayoutAwareOMKeyFactory.java |    9 +-
 .../file/TestOMDirectoryCreateRequestWithFSO.java  |   91 +-
 .../file/TestOMFileCreateRequestWithFSO.java       |   25 +-
 .../key/TestOMAllocateBlockRequestWithFSO.java     |   16 +-
 .../om/request/key/TestOMKeyAclRequestWithFSO.java |    8 +-
 .../om/request/key/TestOMKeyCommitRequest.java     |    6 +-
 .../request/key/TestOMKeyCommitRequestWithFSO.java |   12 +-
 .../request/key/TestOMKeyCreateRequestWithFSO.java |   44 +-
 .../request/key/TestOMKeyDeleteRequestWithFSO.java |    8 +-
 .../request/key/TestOMKeyRenameRequestWithFSO.java |   99 +
 .../request/key/TestOMOpenKeysDeleteRequest.java   |  331 +--
 ...estS3InitiateMultipartUploadRequestWithFSO.java |   24 +-
 .../TestS3MultipartUploadAbortRequest.java         |    2 +-
 .../TestS3MultipartUploadAbortRequestWithFSO.java  |   10 +-
 .../TestS3MultipartUploadCommitPartRequest.java    |    5 +-
 ...tS3MultipartUploadCommitPartRequestWithFSO.java |   18 +-
 .../TestS3MultipartUploadCompleteRequest.java      |    8 +
 ...estS3MultipartUploadCompleteRequestWithFSO.java |   26 +-
 .../s3/security/TestS3GetSecretRequest.java        |  450 ++++
 .../tenant/TestSetRangerServiceVersionRequest.java |  110 +
 .../request/validation/TestRequestValidations.java |   66 +-
 .../file/TestOMDirectoryCreateResponseWithFSO.java |   51 +-
 .../file/TestOMFileCreateResponseWithFSO.java      |    8 +-
 .../response/key/TestOMAllocateBlockResponse.java  |    2 +-
 .../key/TestOMAllocateBlockResponseWithFSO.java    |    7 +-
 .../om/response/key/TestOMKeyCommitResponse.java   |    4 +-
 .../key/TestOMKeyCommitResponseWithFSO.java        |   18 +-
 .../key/TestOMKeyCreateResponseWithFSO.java        |    8 +-
 .../om/response/key/TestOMKeyDeleteResponse.java   |   20 +-
 .../key/TestOMKeyDeleteResponseWithFSO.java        |    5 +-
 .../ozone/om/response/key/TestOMKeyResponse.java   |   32 +-
 .../response/key/TestOMOpenKeysDeleteResponse.java |  119 +-
 ...stS3InitiateMultipartUploadResponseWithFSO.java |   10 +-
 .../s3/multipart/TestS3MultipartResponse.java      |   64 +-
 .../TestS3MultipartUploadAbortResponse.java        |    8 +-
 .../TestS3MultipartUploadAbortResponseWithFSO.java |   13 +-
 ...S3MultipartUploadCommitPartResponseWithFSO.java |   26 +-
 ...stS3MultipartUploadCompleteResponseWithFSO.java |   33 +-
 .../om/upgrade/TestOMLayoutFeatureAspect.java      |    1 +
 .../hadoop/ozone/security/acl/TestParentAcl.java   |    2 +
 hadoop-ozone/ozonefs-common/pom.xml                |    2 +-
 .../hadoop/fs/ozone/BasicOzoneFileSystem.java      |    4 +-
 .../ozone/BasicRootedOzoneClientAdapterImpl.java   |   11 +-
 hadoop-ozone/ozonefs-shaded/pom.xml                |    4 +
 hadoop-ozone/pom.xml                               |    7 +
 hadoop-ozone/recon/pom.xml                         |    2 +-
 .../org/apache/hadoop/ozone/recon/ReconServer.java |    3 +
 .../hadoop/ozone/recon/api/NSSummaryEndpoint.java  |   31 +-
 .../ozone/recon/scm/ReconContainerManager.java     |    7 +-
 .../ozone/recon/scm/ReconPipelineManager.java      |    5 +-
 .../scm/ReconStorageContainerManagerFacade.java    |    9 +-
 .../spi/impl/OzoneManagerServiceProviderImpl.java  |    4 +-
 .../webapps/recon/ozone-recon-web/package.json     |    2 +-
 .../webapps/recon/ozone-recon-web/pnpm-lock.yaml   |   34 +-
 .../ozone/recon/OMMetadataManagerTestUtils.java    |   15 +-
 .../ozone/recon/api/TestNSSummaryEndpoint.java     |   26 +-
 .../scm/AbstractReconContainerManagerTest.java     |    8 +-
 .../impl/TestOzoneManagerServiceProviderImpl.java  |   11 +-
 .../ozone/recon/tasks/TestNSSummaryTask.java       |   18 +-
 .../ozone/recon/tasks/TestOMDBUpdatesHandler.java  |    6 +-
 hadoop-ozone/s3gateway/pom.xml                     |   26 +-
 .../java/org/apache/hadoop/ozone/s3/Gateway.java   |    5 +-
 .../apache/hadoop/ozone/s3/OzoneClientCache.java   |  172 ++
 .../hadoop/ozone/s3/OzoneClientProducer.java       |   46 +-
 .../apache/hadoop/ozone/s3/RequestIdentifier.java  |    8 +-
 .../hadoop/ozone/s3/endpoint/BucketEndpoint.java   |   70 +-
 .../hadoop/ozone/s3/endpoint/EndpointBase.java     |   69 +-
 .../hadoop/ozone/s3/endpoint/ObjectEndpoint.java   |   90 +-
 .../hadoop/ozone/s3/metrics/S3GatewayMetrics.java  |   80 +
 .../org/apache/hadoop/ozone/s3/util/S3Utils.java   |   19 -
 ....hadoop.ozone.om.protocolPB.OmTransportFactory} |    8 +-
 .../hadoop/ozone/client/ObjectStoreStub.java       |   10 +-
 .../hadoop/ozone/client/OzoneBucketStub.java       |    8 +-
 .../ozone/protocolPB/TestGrpcOmTransport.java      |   88 +
 .../hadoop/ozone/s3/TestS3GatewayAuditLog.java     |   31 +-
 .../s3/endpoint/TestMultipartUploadWithCopy.java   |    6 +-
 .../hadoop/ozone/s3/endpoint/TestObjectHead.java   |    6 +-
 .../ozone/s3/endpoint/TestPermissionCheck.java     |   12 +-
 .../ozone/s3/metrics/TestS3GatewayMetrics.java     |  367 ++-
 hadoop-ozone/tools/pom.xml                         |    2 +-
 .../apache/hadoop/ozone/debug/PrefixParser.java    |   27 +-
 .../ozone/freon/AbstractOmBucketReadWriteOps.java  |  228 ++
 .../hadoop/ozone/freon/BaseFreonGenerator.java     |    1 +
 .../hadoop/ozone/freon/ChunkManagerDiskWrite.java  |    1 +
 .../hadoop/ozone/freon/ContentGenerator.java       |    1 +
 .../hadoop/ozone/freon/DatanodeBlockPutter.java    |    1 +
 .../hadoop/ozone/freon/DatanodeChunkGenerator.java |    1 +
 .../freon/FollowerAppendLogEntryGenerator.java     |    3 +-
 .../java/org/apache/hadoop/ozone/freon/Freon.java  |    4 +-
 .../hadoop/ozone/freon/HadoopDirTreeGenerator.java |    1 +
 .../ozone/freon/HadoopNestedDirGenerator.java      |    1 +
 .../ozone/freon/LeaderAppendLogEntryGenerator.java |    3 +-
 .../ozone/freon/OmBucketReadWriteFileOps.java      |  108 +
 .../ozone/freon/OmBucketReadWriteKeyOps.java       |  145 ++
 .../hadoop/ozone/freon/RandomKeyGenerator.java     |    1 +
 .../apache/hadoop/ozone/freon/S3KeyGenerator.java  |    1 +
 .../hadoop/ozone/freon/SCMThroughputBenchmark.java |    1 +
 .../containergenerator/GeneratorDatanode.java      |    1 +
 .../ozone/shell/bucket/CreateBucketHandler.java    |   23 +-
 .../hadoop/ozone/shell/s3/GetS3SecretHandler.java  |   13 +-
 .../org/apache/hadoop/ozone/shell/s3/S3Shell.java  |    1 +
 ...3SecretHandler.java => SetS3SecretHandler.java} |   35 +-
 .../ozone/shell/tenant/GetUserInfoHandler.java     |  110 +
 .../shell/tenant/TenantAssignAdminHandler.java     |   68 +
 .../tenant/TenantAssignUserAccessIdHandler.java    |   83 +
 .../shell/tenant/TenantBucketLinkHandler.java      |   74 +
 .../ozone/shell/tenant/TenantCreateHandler.java    |   55 +
 .../ozone/shell/tenant/TenantDeleteHandler.java    |   73 +
 .../ozone/shell/tenant/TenantGetSecretHandler.java |   53 +
 .../hadoop/ozone/shell/tenant/TenantHandler.java   |   54 +
 .../ozone/shell/tenant/TenantListHandler.java      |   72 +
 .../ozone/shell/tenant/TenantListUsersHandler.java |   81 +
 .../shell/tenant/TenantRevokeAdminHandler.java     |   61 +
 .../tenant/TenantRevokeUserAccessIdHandler.java}   |   39 +-
 .../ozone/shell/tenant/TenantSetSecretHandler.java |   55 +
 .../{s3/S3Shell.java => tenant/TenantShell.java}   |   30 +-
 .../ozone/shell/tenant/TenantUserCommands.java     |   76 +
 .../hadoop/ozone/shell/tenant/package-info.java}   |   31 +-
 pom.xml                                            |   83 +-
 672 files changed, 38793 insertions(+), 6094 deletions(-)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/BadDataLocationException.java (100%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/BlockInputStreamFactory.java (95%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/BlockInputStreamFactoryImpl.java (97%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockInputStream.java (97%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockInputStreamFactory.java (95%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockInputStreamFactoryImpl.java (97%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockInputStreamProxy.java (97%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockReconstructedInputStream.java (100%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/ECBlockReconstructedStripeInputStream.java (99%)
 rename {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/InsufficientLocationsException.java (100%)
 copy {hadoop-ozone => hadoop-hdds}/client/src/main/java/org/apache/hadoop/ozone/client/io/package-info.java (100%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/ECStreamTestUtil.java (96%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/TestBlockInputStreamFactoryImpl.java (86%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/TestECBlockInputStream.java (95%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/TestECBlockInputStreamProxy.java (95%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/TestECBlockReconstructedInputStream.java (96%)
 rename {hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => hadoop-hdds/client/src/test/java/org/apache/hadoop/ozone/client/io}/TestECBlockReconstructedStripeInputStream.java (95%)
 copy hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmKeyLocationInfo.java => hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/scm/storage/BlockLocationInfo.java (54%)
 rename hadoop-hdds/{framework => common}/src/main/java/org/apache/hadoop/hdds/server/JsonUtils.java (100%)
 create mode 100644 hadoop-hdds/common/src/main/java/org/apache/hadoop/ozone/util/OzoneNetUtils.java
 create mode 100644 hadoop-hdds/common/src/test/java/org/apache/hadoop/hdds/scm/TestSCMHAUtils.java
 copy hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => hadoop-hdds/common/src/test/java/org/apache/hadoop/ozone/TestOzoneConsts.java (58%)
 copy hadoop-hdds/{server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/io/TestBigIntegerCodec.java => common/src/test/java/org/apache/hadoop/ozone/ha/TestOzoneNetUtils.java} (54%)
 create mode 100644 hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/common/statemachine/commandhandler/ReconstructECContainersCommandHandler.java
 create mode 100644 hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCommandInfo.java
 create mode 100644 hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionCoordinatorTask.java
 create mode 100644 hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/ECReconstructionSupervisor.java
 copy hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/container/ec/reconstruction/package-info.java (57%)
 create mode 100644 hadoop-hdds/container-service/src/main/java/org/apache/hadoop/ozone/protocol/commands/ReconstructECContainersCommand.java
 create mode 100644 hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/container/ec/reconstruction/TestECReconstructionSupervisor.java
 create mode 100644 hadoop-hdds/container-service/src/test/java/org/apache/hadoop/ozone/protocol/commands/TestReconstructionECContainersCommands.java
 create mode 100644 hadoop-hdds/docs/content/feature/S3-Multi-Tenancy-Access-Control.md
 create mode 100644 hadoop-hdds/docs/content/feature/S3-Multi-Tenancy-Setup.md
 create mode 100644 hadoop-hdds/docs/content/feature/S3-Multi-Tenancy.md
 create mode 100644 hadoop-hdds/docs/content/feature/S3-Tenant-Commands.md
 delete mode 100644 hadoop-hdds/docs/dev-support/bin/make_images_responsive.py
 rename hadoop-hdds/docs/themes/ozonedoc/layouts/{shortcodes/image.html => _default/_markup/render-image.html} (84%)
 create mode 100644 hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/RocksDatabase.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/ECContainerReplicaCount.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ContainerReplicaOp.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ContainerReplicaPendingOps.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/{ReplicationActivityStatusMXBean.java => InflightAction.java} (58%)
 rename hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/{ReplicationManager.java => replication/LegacyReplicationManager.java} (88%)
 delete mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatus.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationManager.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/BackgroundSCMService.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/StatefulService.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/StatefulServiceStateManager.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/ha/StatefulServiceStateManagerImpl.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/metadata/ByteStringCodec.java
 create mode 100644 hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/node/CommandQueueReportHandler.java
 create mode 100644 hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/TestSCMCommonPlacementPolicy.java
 create mode 100644 hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/replication/TestContainerReplicaPendingOps.java
 create mode 100644 hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/container/states/TestECContainerReplicaCount.java
 create mode 100644 hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestBackgroundSCMService.java
 create mode 100644 hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/ha/TestStatefulServiceStateManagerImpl.java
 copy hadoop-hdds/server-scm/src/test/java/org/apache/hadoop/hdds/scm/node/{TestNodeReportHandler.java => TestCommandQueueReportHandler.java} (53%)
 create mode 100644 hadoop-hdds/tools/src/test/java/org/apache/hadoop/hdds/scm/cli/datanode/TestUsageInfoSubcommand.java
 create mode 100644 hadoop-ozone/client/src/main/java/org/apache/hadoop/ozone/client/TenantArgs.java
 rename hadoop-ozone/{integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/read => client/src/test/java/org/apache/hadoop/ozone/client/io}/TestKeyInputStreamEC.java (94%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/ha/GrpcOMFailoverProxyProvider.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/DeleteTenantState.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDBAccessIdInfo.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDBTenantState.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmDBUserPrincipalInfo.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmRangerSyncArgs.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmTenantArgs.java
 copy hadoop-hdds/framework/src/main/java/org/apache/hadoop/hdds/utils/db/StringCodec.java => hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/OmTenantUserArgs.java (55%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/S3VolumeContext.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/TenantStateList.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/TenantUserInfoValue.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/helpers/TenantUserList.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/AccessPolicy.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/AccountNameSpace.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/BucketNameSpace.java
 copy hadoop-ozone/{s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => common/src/main/java/org/apache/hadoop/ozone/om/multitenant/OzoneOwnerPrincipal.java} (59%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/OzoneTenant.java
 copy hadoop-ozone/{s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => common/src/main/java/org/apache/hadoop/ozone/om/multitenant/OzoneTenantRolePrincipal.java} (59%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/RangerAccessPolicy.java
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/Tenant.java
 copy hadoop-ozone/{s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => common/src/main/java/org/apache/hadoop/ozone/om/multitenant/impl/AccountNameSpaceImpl.java} (54%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/impl/SingleVolumeTenantNamespace.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/impl/package-info.java (65%)
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/multitenant/package-info.java (65%)
 create mode 100644 hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/protocolPB/GrpcOmTransport.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/common/src/main/java/org/apache/hadoop/ozone/om/protocolPB/GrpcOmTransportFactory.java (58%)
 create mode 100644 hadoop-ozone/common/src/test/java/org/apache/hadoop/ozone/om/protocolPB/TestS3GrpcOmTransport.java
 copy hadoop-ozone/{integration-test => common}/src/test/resources/log4j.properties (100%)
 create mode 100644 hadoop-ozone/dist/src/main/compose/common/grafana/dashboards/Ozone - Overall Metrics.json
 create mode 100644 hadoop-ozone/dist/src/main/compose/ozonesecure/mockserverInitialization.json
 copy hadoop-ozone/dist/src/main/smoketest/{upgrade/validate.robot => basic/single_node.robot} (69%)
 create mode 100644 hadoop-ozone/dist/src/main/smoketest/security/ozone-secure-tenant.robot
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/hdds/scm/storage/TestContainerCommandsEC.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/freon/TestOmBucketReadWriteFileOps.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/freon/TestOmBucketReadWriteKeyOps.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/OMUpgradeTestUtils.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestListStatus.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/TestOMBucketLayoutUpgrade.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantAccessAuthorizerRangerPlugin.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantVolume.java
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestRangerBGSyncService.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/om/multitenant/package-info.java (65%)
 create mode 100644 hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/shell/TestOzoneTenantShell.java
 create mode 100644 hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/codec/OmDBAccessIdInfoCodec.java
 create mode 100644 hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/codec/OmDBTenantStateCodec.java
 create mode 100644 hadoop-ozone/interface-storage/src/main/java/org/apache/hadoop/ozone/om/codec/OmDBUserPrincipalInfoCodec.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/GrpcOzoneManagerServer.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMMultiTenantManager.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OMMultiTenantManagerImpl.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneListStatusHelper.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/OzoneManagerServiceGrpc.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/TenantOp.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/AuthorizerLock.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/AuthorizerLockImpl.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/CachedTenantState.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/MultiTenantAccessAuthorizer.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/MultiTenantAccessAuthorizerDummyPlugin.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/MultiTenantAccessAuthorizerRangerPlugin.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/MultiTenantAccessController.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/OMRangerBGSyncService.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/RangerClientMultiTenantAccessController.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/RangerRestMultiTenantAccessController.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/multitenant/package-info.java (71%)
 rename hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/key/{OMPathsPurgeRequestWithFSO.java => OMDirectoriesPurgeRequestWithFSO.java} (69%)
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/OMSetSecretRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/security/S3SecretRequestHelper.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMSetRangerServiceVersionRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignAdminRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantAssignUserAccessIdRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantCreateRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantDeleteRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeAdminRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/OMTenantRevokeUserAccessIdRequest.java
 copy hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/s3/tenant/package-info.java (65%)
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMDirectoriesPurgeResponseWithFSO.java
 delete mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/key/OMPathsPurgeResponseWithFSO.java
 copy hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/security/{S3GetSecretResponse.java => OMSetSecretResponse.java} (66%)
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMSetRangerServiceVersionResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantAssignAdminResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantAssignUserAccessIdResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantCreateResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantDeleteResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantRevokeAdminResponse.java
 create mode 100644 hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/OMTenantRevokeUserAccessIdResponse.java
 rename hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/replication/ReplicationActivityStatusMXBean.java => hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/response/s3/tenant/package-info.java (65%)
 create mode 100644 hadoop-ozone/ozone-manager/src/main/resources/META-INF/aop.xml
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestAuthorizerLockImpl.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestGrpcOzoneManagerServer.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMMultiTenantManager.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/TestOMMultiTenantManagerImpl.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/multitenant/InMemoryMultiTenantAccessController.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/multitenant/TestMultiTenantAccessController.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/key/TestOMKeyRenameRequestWithFSO.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/s3/security/TestS3GetSecretRequest.java
 create mode 100644 hadoop-ozone/ozone-manager/src/test/java/org/apache/hadoop/ozone/om/request/s3/tenant/TestSetRangerServiceVersionRequest.java
 create mode 100644 hadoop-ozone/s3gateway/src/main/java/org/apache/hadoop/ozone/s3/OzoneClientCache.java
 copy hadoop-ozone/{dev-support/checks/build.sh => s3gateway/src/main/resources/META-INF/services/org.apache.hadoop.ozone.om.protocolPB.OmTransportFactory} (76%)
 mode change 100755 => 100644
 create mode 100644 hadoop-ozone/s3gateway/src/test/java/org/apache/hadoop/ozone/protocolPB/TestGrpcOmTransport.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/freon/AbstractOmBucketReadWriteOps.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/freon/OmBucketReadWriteFileOps.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/freon/OmBucketReadWriteKeyOps.java
 copy hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/s3/{GetS3SecretHandler.java => SetS3SecretHandler.java} (66%)
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/GetUserInfoHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantAssignAdminHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantAssignUserAccessIdHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantBucketLinkHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantCreateHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantDeleteHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantGetSecretHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantListHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantListUsersHandler.java
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantRevokeAdminHandler.java
 copy hadoop-ozone/{s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantRevokeUserAccessIdHandler.java} (52%)
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantSetSecretHandler.java
 copy hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/{s3/S3Shell.java => tenant/TenantShell.java} (67%)
 create mode 100644 hadoop-ozone/tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/TenantUserCommands.java
 copy hadoop-ozone/{s3gateway/src/main/java/org/apache/hadoop/ozone/s3/RequestIdentifier.java => tools/src/main/java/org/apache/hadoop/ozone/shell/tenant/package-info.java} (58%)


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