* support s3 backend in tiered storage
* refactor(tieredstorage): Unify all object storage configuration properties
1. Unify all object storage configuration properties
* refactor(tieredstorage): replace some lambda function with more simple expression
1. replace some lambda function with more simple expression
* style(tieredstorage): perfect comments on ChunkMetadata
1. perfect comments on ChunkMetadata
* refactor(tieredstorage): perfect lambda expression
1. perfect lambda expression
* fix(tieredstorage): fix unmatched config attributes in brokerS3.conf
1. fix unmatched config attributes in brokerS3.conf
* feat(tieredstorage): More context in logging output
1. More context in logging output
* fix(tieredstorage): fix wrong concurrently put
1. fix wrong concurrently put
* test(tieredstorage): add UT to verify TieredFileSegmentInputStream
1. add UT to verify TieredFileSegmentInputStream
* refactor(tieredstorage): better code placement
1. better code placement
* refactor(tieredstorage): refactor TieredFileSegmentInputStream for better understandability
1. refactor TieredFileSegmentInputStream for better understandability
* feat(tieredstorage): support `reset` of TieredFileSegmentInputStream
1. support `reset` of TieredFileSegmentInputStream
* fix(tieredstorage): fix wrong position when failed in `S3FileSegment#commit0`
1. fix wrong position when failed in `S3FileSegment#commit0`
* fix(tieredstorage): fix still have upload buffer when already seal the segment
1. fix still have upload buffer when already seal the segment
* test(tieredstorage): fix wrong assertion
1. fix wrong assertion
* feat(tieredstorage): support switch to enable merge chunks into segment
1. support switch to enable merge chunks into segment
* feat(tieredstorage): add more debug log in TieredMessageStore
1. add more debug log in TieredMessageStore
* style(tieredstorage): use rmq code style
1. use rmq code style
* feat(tieredstorage): add metrics for S3 provider
1. add metrics for S3 provider
* fix(tieredstorage): resolve conflicts after rebasing master
1. resolve conflicts after rebasing master
Closes https://github.com/apache/rocketmq/issues/6624
* style(tieredstorage): change log level
1. change log level
Closes https://github.com/apache/rocketmq/issues/6154
* build(controller): build tieredstorage with bazel
1. build tieredstorage with bazel
* build(controller): build tieredstorage with bazel
1. build tieredstorage with bazel
* style(tieredstorage): change log level
1. change log level
Closes https://github.com/apache/rocketmq/issues/6154
* test(tieredstorage): ignore tests about S3Mock
1. ignore tests about S3Mock
* test(tieredstorage): ignore tests about S3Mock
1. ignore tests about S3Mock
* Remove ClientLogger
* WIP
* WIP
* Rename logger to log
* Make it compile
* WIP
* Fix bazel to use shaded slf4j
* Fix DeleteExpiredCommitLogSubCommandTest
* Fix pom.xml duplication
* Fix maven deps
* Add test logback configuration file
* Fix unit test output
* Fix logback configuration file
* All logging are made on top of slf4j
* Fix test log configuration file name
* Fix test log configuration file name for test module
* All logging are shaded slf4j targeted
* DLedger has an explicit dependency on slf4j
* Fix DLedger
* Fix DLeader issue
* Move logback configuration files to each module
Co-authored-by: Li Zhanhui <lizhanhui@gmail.com>
* [ISSUE #5087] [Remoting-A] Support logging rpc distribution in remoting protocol
* [ISSUE #5087] [Remoting-A] Support logging rpc distribution in remoting protocol
* [ISSUE #5087] [Remoting-A] Support logging rpc distribution in remoting protocol
* [ISSUE #5087] [Remoting-A] Support logging rpc distribution in remoting protocol
* [ISSUE #5087] [Remoting-A] Support logging rpc distribution in remoting protocol
Co-authored-by: 斜阳 <terrance.lzm@alibaba-inc.com>
* fix NPE when updating account auth if no accounts defined in acl config file
* fix: creating globalWhiteRemoteAddresses failed when default acl config file did not exist
* move plain_acl.yml out of conf/acl/: conf/plain_acl.yml is the default acl config file and config of different accounts can be placed under conf/acl/
* fix merge problem
* fix: 1. errors when processing empty config files; 2.accounts can't be added back after deleting account part in ACL config files
* fix merge problem
* fix test bug
* add test
* add missing test config files
* acl temp
* acl
* fix test case
* fix code style issues
* add considerations on compatibility to the original one ACL config file and scalability of supporting multiple config files in different directories.
* fix test case testWatch
* 1.fix some issues
2.add a detailed design document
* Add warn log when the accesskey is repeated in multiple ACL files.
* 1.Change the folder of acl configuration to conf/acl
2.Add the logic to check if path is a directory in the method of getAllAclFiles(String path)
* Add a parameter in AclFileWatchService constructor.
* Add logic to determine if path exists in the getAllAclFiles(String path) method in PlainPermissionManager.java and AclFileWatchService.java
* Fix the serialization problem of allAclFileVersion field in clusterAclConfigVersion command
* 1.Fix the serialization problem of allAclFileVersion field in clusterAclConfigVersion command
2.Improve the logic of updateAccessConfig method
* [issue#1078]fix User can't use mqadmin command normally if they don't copy the tool.yml file to their related fold and AclEnable flag is closed.
* [issue#1147]Broker will report Exception if open the aclEnable and enableDLegerCommitLog flag at the same time.
* [issue#1147]Broker will report Exception if open the aclEnable and enableDLegerCommitLog flag at the same time.
* [issue#1147]Add the restriction of Acl in the acl's user guide.
* [issue#1147]Adjust some codes for acl issue that users can't open the aclEnable and use Master/Slave or Dledger the same time.
* [issue#1147]Adjust and optimize some codes for acl issue that users can't open the aclEnable and use Master/Slave or Dledger the same time.
* [issue#1147]return back for original codes for acl issue that users can't open the aclEnable and use Master/Slave or Dledger the same time.
* [ISSUE#403] fix some bugs and Optimization code for rocketmq's acl feature.
* [ISSUE#403] fix some bugs and Optimization code for rocketmq's acl feature.
* Update MQAdminStartup.java
* Update MQAdminStartup.java