-
Notifications
You must be signed in to change notification settings - Fork 105
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
feat(wal): reduce concurrent conflicts between block write operations and poll operations #1554
base: main
Are you sure you want to change the base?
Conversation
…and poll operations (AutoMQ#1550)
chenyong152 seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
Hello, @RapperCL, you can update your code within the same PR; there's no need to create multiple PRs. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
s3stream/src/main/java/com/automq/stream/s3/wal/impl/block/SlidingWindowService.java
Outdated
Show resolved
Hide resolved
s3stream/src/main/java/com/automq/stream/s3/wal/impl/block/SlidingWindowService.java
Outdated
Show resolved
Hide resolved
* The lock of {@link #pendingBlocks}, {@link #writingBlocks}, {@link #currentBlock}. | ||
*/ | ||
private final Lock blockLock = new ReentrantLock(); | ||
|
||
private final Lock pollBlocKLock = new ReentrantLock(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comments for blockLock
should be updated, and meanwhile, add some comments for pollBlockLock
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now pendingBlocks
is not protected by blockLock
, comments of blockLock
should be updated.
We have provided a tool called "WriteBench" for testing WAL performance. You can use it to compare the performance before and after the modifications to confirm their effectiveness. |
Okay, I'll find some time later to test it. |
…and poll operations (AutoMQ#1550)
issue