-
Notifications
You must be signed in to change notification settings - Fork 11.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ISSUE #6154] Support Amazon S3 backend in TieredStorage #6495
[ISSUE #6154] Support Amazon S3 backend in TieredStorage #6495
Conversation
You have successfully added a new CodeQL configuration |
It's recommended to provide more detailed documentation for such a huge commitment. |
OK! I will provide a more detailed API doc for that. I wrote the design idea in the issue #6154 and put a lot of comments in the code,maybe it can be helpful for review~ |
03e032c
to
507f26d
Compare
tieredstore/src/main/java/org/apache/rocketmq/tieredstore/common/TieredMessageStoreConfig.java
Outdated
Show resolved
Hide resolved
tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/TieredStoreProvider.java
Outdated
Show resolved
Hide resolved
...edstore/src/main/java/org/apache/rocketmq/tieredstore/provider/s3/TieredStorageS3Client.java
Outdated
Show resolved
Hide resolved
...edstore/src/main/java/org/apache/rocketmq/tieredstore/provider/s3/TieredStorageS3Client.java
Outdated
Show resolved
Hide resolved
tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/s3/ChunkMetadata.java
Outdated
Show resolved
Hide resolved
tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/s3/ChunkMetadata.java
Outdated
Show resolved
Hide resolved
f27f48e
to
fc61063
Compare
…rties 1. Unify all object storage configuration properties
…e expression 1. replace some lambda function with more simple expression
1. perfect comments on ChunkMetadata
1. perfect lambda expression
1. fix unmatched config attributes in brokerS3.conf
1. More context in logging output
1. fix wrong concurrently put
1. add UT to verify TieredFileSegmentInputStream
1. better code placement
…tter understandability 1. refactor TieredFileSegmentInputStream for better understandability
1. support `reset` of TieredFileSegmentInputStream
…commit0` 1. fix wrong position when failed in `S3FileSegment#commit0`
…e segment 1. fix still have upload buffer when already seal the segment
1. fix wrong assertion
1. support switch to enable merge chunks into segment
1. add more debug log in TieredMessageStore
1. use rmq code style
1. add metrics for S3 provider
1. resolve conflicts after rebasing master Closes apache#6624
1. change log level Closes apache#6154
1. build tieredstorage with bazel
1. build tieredstorage with bazel
1. change log level Closes apache#6154
0da3c6d
to
050d7c8
Compare
1. ignore tests about S3Mock
c8a1a84
to
ad10d00
Compare
1. ignore tests about S3Mock
Hi @TheR1sing3un I found some unit tests are ignored in this PR, could you please submit a PR to reopen these tests? If there is any problem passing them, please feel free to talk about it with the community. |
These ut is unstable in some jdk version or machine environment, I think the reason is that : https://github.com/adobe/S3Mock which I import it in ut to mock a S3 server. I will try to fix these ut by changing dependency or using another way to test. I will submit a PR to reopen these ut soon~ |
Hi, I think I found the reason why bazel test always failed. Bazel build and test this project in ci with jdk1.80_242, which is incompatible for |
Make sure set the target branch to
develop
What is the purpose of the change
fix #6154
Brief changelog
XX
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice,
it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR
.[ISSUE #123] Fix UnknownException when host config not exist
. Each commit in the pull request should have a meaningful subject line and body.mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle
to make sure basic checks pass. Runmvn clean install -DskipITs
to make sure unit-test pass. Runmvn clean test-compile failsafe:integration-test
to make sure integration-test pass.