Skip to content
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

[RIP-70] Optimizing Lock Mechanisms #8444

Closed
wants to merge 80 commits into from
Closed

Conversation

3424672656
Copy link
Contributor

@3424672656 3424672656 commented Jul 25, 2024

Which Issue(s) This PR Fixes

Fixes #8442

Brief Description

The pr implements the Phase 1 change of RIP-70

  • Optimize message delivery logic and delete TopicQueueLock

  • Optimize the back pressure mechanism of the client,Fixed inaccuracies caused by dynamic adjustment of semaphore

  • The locking mechanism of retreat strategy is introduced and provides a configuration change interface

How Did You Test This Change?

The cluster is tested with openchaos, injection fault: random-suspend,major-kill

Documentation containing specific modifications and chaos tests:https://shimo.im/docs/0l3NMnen8GFGDaAR

3424672656 and others added 30 commits May 15, 2024 10:04
…2656/rocketmq into fix_producer_backcompress

# Conflicts:
#	client/src/main/java/org/apache/rocketmq/client/impl/producer/DefaultMQProducerImpl.java
…SendSize result in inaccurate actual semaphore values
…SendSize result in inaccurate actual semaphore values
@codecov-commenter
Copy link

codecov-commenter commented Jul 25, 2024

Codecov Report

Attention: Patch coverage is 63.51706% with 139 lines in your changes missing coverage. Please review.

Project coverage is 47.19%. Comparing base (5d43e7d) to head (ba88041).

Files with missing lines Patch % Lines
...main/java/org/apache/rocketmq/store/CommitLog.java 47.72% 51 Missing and 18 partials ⚠️
...mq/client/impl/producer/DefaultMQProducerImpl.java 51.42% 13 Missing and 4 partials ⚠️
...pache/rocketmq/store/dledger/DLedgerCommitLog.java 76.38% 14 Missing and 3 partials ⚠️
...g/apache/rocketmq/store/lock/AdaptiveLockImpl.java 73.21% 12 Missing and 3 partials ⚠️
...ache/rocketmq/store/lock/CollisionRetreatLock.java 64.70% 6 Missing ⚠️
.../apache/rocketmq/client/lock/ReadWriteCASLock.java 75.00% 2 Missing and 3 partials ⚠️
...ache/rocketmq/store/config/MessageStoreConfig.java 37.50% 5 Missing ⚠️
...he/rocketmq/client/producer/DefaultMQProducer.java 88.46% 3 Missing ⚠️
...a/org/apache/rocketmq/store/lock/AdaptiveLock.java 0.00% 2 Missing ⚠️
Additional details and impacted files
@@              Coverage Diff              @@
##             develop    #8444      +/-   ##
=============================================
- Coverage      47.24%   47.19%   -0.06%     
- Complexity     11485    11486       +1     
=============================================
  Files           1277     1280       +3     
  Lines          89430    89569     +139     
  Branches       11502    11518      +16     
=============================================
+ Hits           42254    42270      +16     
- Misses         41970    42084     +114     
- Partials        5206     5215       +9     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@3424672656 3424672656 changed the title [RIP-70-1] Optimizing Lock Mechanisms [RIP-70] Optimizing Lock Mechanisms Sep 5, 2024
@3424672656 3424672656 closed this Sep 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[RIP-70] Optimizing Lock Mechanisms
2 participants