Ownership is measured by how many commits each author made to each file in the current tree. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated. The bus factor is the smallest number of people who are, between them, primary owner of more than half of the files.
Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.
| File | Sole owner | Commits |
|---|---|---|
| broker/src/main/java/org/apache/rocketmq/broker/lite/LiteEventDispatcher.java | Quan | 8 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/index/IndexStoreServiceTest.java | lizhimins | 8 |
| client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java | Eason Chen | 8 |
| broker/src/test/java/org/apache/rocketmq/broker/processor/PopLiteMessageProcessorTest.java | Quan | 7 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/FileSegment.java | lizhimins | 7 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/PosixFileSegment.java | lizhimins | 7 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/MessageListenerConcurrently.java | yukon | 7 |
| client/src/main/java/org/apache/rocketmq/client/consumer/PullCallback.java | yukon | 7 |
| broker/src/test/java/org/apache/rocketmq/broker/lite/LiteEventDispatcherTest.java | Quan | 6 |
| broker/src/main/java/org/apache/rocketmq/broker/client/ClientChannelInfo.java | yukon | 6 |
| File | Sole owner | Commits |
|---|---|---|
| broker/src/main/java/org/apache/rocketmq/broker/lite/LiteEventDispatcher.java | Quan | 8 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/index/IndexStoreServiceTest.java | lizhimins | 8 |
| client/src/main/java/org/apache/rocketmq/client/utils/MessageUtil.java | Eason Chen | 8 |
| broker/src/test/java/org/apache/rocketmq/broker/processor/PopLiteMessageProcessorTest.java | Quan | 7 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/FileSegment.java | lizhimins | 7 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/PosixFileSegment.java | lizhimins | 7 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/MessageListenerConcurrently.java | yukon | 7 |
| client/src/main/java/org/apache/rocketmq/client/consumer/PullCallback.java | yukon | 7 |
| broker/src/test/java/org/apache/rocketmq/broker/lite/LiteEventDispatcherTest.java | Quan | 6 |
| broker/src/main/java/org/apache/rocketmq/broker/client/ClientChannelInfo.java | yukon | 6 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/ConsumeOrderlyContext.java | yukon | 6 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/MessageListener.java | yukon | 6 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/core/MessageStoreFetcherImplTest.java | lizhimins | 5 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/file/FlatCommitLogFile.java | lizhimins | 5 |
| broker/src/main/java/org/apache/rocketmq/broker/pop/PopConsumerRocksdbStore.java | lizhimins | 5 |
| store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/BrokerMetadata.java | TheR1sing3un | 5 |
| common/src/main/java/org/apache/rocketmq/common/utils/HttpTinyClient.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/QueryResult.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/admin/MQAdminExtInner.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/consumer/AllocateMessageQueueStrategy.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/consumer/PullStatus.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/ConsumeConcurrentlyContext.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/ConsumeConcurrentlyStatus.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/ConsumeOrderlyStatus.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/hook/CheckForbiddenHook.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/hook/FilterMessageHook.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/impl/CommunicationMode.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/producer/LocalTransactionState.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/producer/MessageQueueSelector.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/producer/SendStatus.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/producer/TransactionSendResult.java | yukon | 5 |
| client/src/main/java/org/apache/rocketmq/client/producer/selector/SelectMessageQueueByMachineRoom.java | yukon | 5 |
| common/src/main/java/org/apache/rocketmq/common/ServiceState.java | yukon | 5 |
| common/src/main/java/org/apache/rocketmq/common/consumer/ConsumeFromWhere.java | yukon | 5 |
| common/src/main/java/org/apache/rocketmq/common/message/MessageId.java | yukon | 5 |
| common/src/main/java/org/apache/rocketmq/common/message/MessageQueueForC.java | yukon | 5 |
| common/src/main/java/org/apache/rocketmq/common/namesrv/NamesrvUtil.java | yukon | 5 |
| namesrv/src/main/java/org/apache/rocketmq/namesrv/kvconfig/KVConfigSerializeWrapper.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/CommandCustomHeader.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/annotation/CFNullable.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/common/SemaphoreReleaseOnlyOnce.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/exception/RemotingCommandException.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/exception/RemotingException.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/exception/RemotingSendRequestException.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/exception/RemotingTimeoutException.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/exception/RemotingTooMuchRequestException.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/netty/NettyEvent.java | yukon | 5 |
| remoting/src/main/java/org/apache/rocketmq/remoting/protocol/RemotingCommandType.java | yukon | 5 |
| store/src/main/java/org/apache/rocketmq/store/ReferenceResource.java | yukon | 5 |
| store/src/main/java/org/apache/rocketmq/store/config/BrokerRole.java | yukon | 5 |
| store/src/main/java/org/apache/rocketmq/store/config/FlushDiskType.java | yukon | 5 |
| store/src/main/java/org/apache/rocketmq/store/index/QueryOffsetResult.java | yukon | 5 |
| broker/src/main/java/org/apache/rocketmq/broker/lite/LiteSubscriptionRegistry.java | Quan | 4 |
| broker/src/test/java/org/apache/rocketmq/broker/processor/LiteManagerProcessorTest.java | Quan | 4 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/file/FlatCommitLogFileTest.java | lizhimins | 4 |
| container/src/main/java/org/apache/rocketmq/container/InnerSalveBrokerController.java | rongtong | 4 |
| store/src/main/java/org/apache/rocketmq/store/ha/autoswitch/TempBrokerMetadata.java | TheR1sing3un | 4 |
| remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/register/ApplyBrokerIdResponseHeader.java | TheR1sing3un | 4 |
| remoting/src/main/java/org/apache/rocketmq/remoting/protocol/header/controller/register/GetNextBrokerIdResponseHeader.java | TheR1sing3un | 4 |
| client/src/main/java/org/apache/rocketmq/client/consumer/PullTaskCallback.java | yukon | 4 |
| client/src/main/java/org/apache/rocketmq/client/consumer/listener/ConsumeReturnType.java | yukon | 4 |
| client/src/main/java/org/apache/rocketmq/client/hook/CheckForbiddenContext.java | yukon | 4 |
| client/src/main/java/org/apache/rocketmq/client/hook/FilterMessageContext.java | yukon | 4 |
| common/src/main/java/org/apache/rocketmq/common/SystemClock.java | yukon | 4 |
| common/src/main/java/org/apache/rocketmq/common/sysflag/SubscriptionSysFlag.java | yukon | 4 |
| common/src/main/java/org/apache/rocketmq/common/utils/ChannelUtil.java | yukon | 4 |
| remoting/src/main/java/org/apache/rocketmq/remoting/annotation/CFNotNull.java | yukon | 4 |
| client/src/test/java/org/apache/rocketmq/client/utils/MessageUtilsTest.java | Eason Chen | 4 |
| broker/src/test/java/org/apache/rocketmq/broker/processor/RecallMessageProcessorTest.java | imzs | 3 |
| broker/src/main/java/org/apache/rocketmq/broker/lite/LiteLifecycleManager.java | Quan | 3 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/provider/FileSegmentTest.java | lizhimins | 3 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/FileSegmentFactory.java | lizhimins | 3 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/file/FlatAppendFileTest.java | lizhimins | 3 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/MessageStoreExecutor.java | lizhimins | 3 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/file/FlatFileFactory.java | lizhimins | 3 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/file/FlatFileStoreTest.java | lizhimins | 3 |
| tieredstore/src/test/java/org/apache/rocketmq/tieredstore/index/IndexStoreServiceBenchTest.java | lizhimins | 3 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/provider/MemoryFileSegment.java | lizhimins | 3 |
| tieredstore/src/main/java/org/apache/rocketmq/tieredstore/common/GetMessageResultExt.java | lizhimins | 3 |
| distribution/conf/container/2container-2m-2s/broker-a-in-container1.conf | rongtong | 3 |
| distribution/conf/container/2container-2m-2s/broker-a-in-container2.conf | rongtong | 3 |
| distribution/conf/container/2container-2m-2s/broker-b-in-container1.conf | rongtong | 3 |
| distribution/conf/container/2container-2m-2s/broker-b-in-container2.conf | rongtong | 3 |
| proxy/src/main/java/org/apache/rocketmq/proxy/grpc/pipeline/AuthenticationPipeline.java | dingshuangxi888 | 3 |
| auth/src/main/java/org/apache/rocketmq/auth/migration/AuthMigrator.java | dingshuangxi888 | 3 |
| auth/src/main/java/org/apache/rocketmq/auth/authentication/chain/DefaultAuthenticationHandler.java | dingshuangxi888 | 3 |
| broker/src/main/java/org/apache/rocketmq/broker/config/v2/TopicConfigManagerV2.java | Zhanhui Li | 3 |
| common/src/main/java/org/apache/rocketmq/common/config/ConfigHelper.java | Zhanhui Li | 3 |
| tools/src/main/java/org/apache/rocketmq/tools/command/queue/CheckRocksdbCqWriteProgressCommand.java | LetLetMe | 3 |
| common/src/test/java/org/apache/rocketmq/common/KeyBuilderTest.java | Zhouxiang Zhan | 3 |
| test/src/test/java/org/apache/rocketmq/test/client/consumer/pop/BasePopOrderly.java | lk | 3 |
| .github/workflows/stale.yml | Aaron Ai | 3 |
| remoting/src/test/resources/certs/client.pem | yukon | 3 |
| remoting/src/test/resources/certs/server.pem | yukon | 3 |
| openmessaging/src/test/java/io/openmessaging/rocketmq/consumer/LocalMessageCacheTest.java | yukon | 3 |
| broker/src/main/java/org/apache/rocketmq/broker/mqtrace/ConsumeMessageHook.java | yukon | 3 |
| client/src/main/java/org/apache/rocketmq/client/consumer/PullTaskContext.java | yukon | 3 |
| client/src/main/java/org/apache/rocketmq/client/consumer/store/ReadOffsetType.java | yukon | 3 |
| client/src/main/java/org/apache/rocketmq/client/hook/ConsumeMessageHook.java | yukon | 3 |
| client/src/main/java/org/apache/rocketmq/client/hook/SendMessageHook.java | yukon | 3 |
Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.
| Author | Files owned | Solely owned | Files touched |
|---|---|---|---|
| yukon | 415 | 89 | 744 |
| rongtong | 249 | 50 | 579 |
| dingshuangxi888 | 238 | 137 | 394 |
| dongeforever | 165 | 124 | 394 |
| SSpirits | 158 | 140 | 678 |
| lizhimins | 119 | 68 | 288 |
| Zhanhui Li | 117 | 34 | 333 |
| Aaron Ai | 115 | 6 | 449 |
| Zhouxiang Zhan | 109 | 45 | 373 |
| kaiyi.lk | 102 | 15 | 190 |
| Quan | 72 | 54 | 255 |
| mxsm | 64 | 31 | 377 |
| Xiao Yang | 63 | 31 | 287 |
| qianye | 51 | 23 | 185 |
| Eric Liu | 45 | 9 | 107 |
| TheR1sing3un | 44 | 16 | 111 |
| lk | 34 | 9 | 157 |
| zhangjidi2016 | 29 | 13 | 76 |
| yulangz | 24 | 13 | 57 |
| ltamber | 22 | 9 | 89 |
| shroman | 21 | 0 | 132 |
| imzs | 21 | 11 | 108 |
| zhaohai | 21 | 16 | 65 |
| 我是管小亮_V0x3f | 19 | 14 | 19 |
| stevenschew | 18 | 2 | 35 |
Files touched by the most people — shared code where changes are most likely to need coordination.
| File | Contributors | Primary owner | Owner share |
|---|---|---|---|
| pom.xml | 85 | 誓嘉 | 42.9% |
| store/src/main/java/org/apache/rocketmq/store/DefaultMessageStore.java | 77 | rongtong | 11.4% |
| broker/src/main/java/org/apache/rocketmq/broker/processor/AdminBrokerProcessor.java | 71 | rongtong | 13.5% |
| client/src/main/java/org/apache/rocketmq/client/impl/MQClientAPIImpl.java | 69 | rongtong | 6.6% |
| client/src/main/java/org/apache/rocketmq/client/impl/producer/DefaultMQProducerImpl.java | 68 | yukon | 8.8% |
| broker/src/main/java/org/apache/rocketmq/broker/BrokerController.java | 64 | rongtong | 17.2% |
| store/src/main/java/org/apache/rocketmq/store/CommitLog.java | 63 | rongtong | 13.5% |
| common/src/main/java/org/apache/rocketmq/common/BrokerConfig.java | 54 | rongtong | 12.9% |
| client/src/main/java/org/apache/rocketmq/client/impl/factory/MQClientInstance.java | 53 | yukon | 13.0% |
| common/src/main/java/org/apache/rocketmq/common/MixAll.java | 50 | yukon | 14.1% |
| README.md | 47 | 誓嘉 | 35.7% |
| store/src/main/java/org/apache/rocketmq/store/config/MessageStoreConfig.java | 47 | rongtong | 16.0% |
| tools/src/main/java/org/apache/rocketmq/tools/admin/DefaultMQAdminExtImpl.java | 47 | yukon | 9.7% |
| remoting/src/main/java/org/apache/rocketmq/remoting/netty/NettyRemotingClient.java | 47 | yukon | 15.2% |
| client/src/main/java/org/apache/rocketmq/client/producer/DefaultMQProducer.java | 47 | yukon | 11.7% |
| broker/src/main/java/org/apache/rocketmq/broker/topic/TopicConfigManager.java | 39 | yukon | 10.8% |
| tools/src/main/java/org/apache/rocketmq/tools/command/MQAdminStartup.java | 38 | rongtong | 10.1% |
| broker/src/main/java/org/apache/rocketmq/broker/processor/SendMessageProcessor.java | 38 | rongtong | 12.7% |
| client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java | 38 | yukon | 12.0% |
| tools/src/main/java/org/apache/rocketmq/tools/admin/DefaultMQAdminExt.java | 38 | rongtong | 11.1% |
How Apache RocketMQ compares with other open source projects from China →
How Apache RocketMQ ranks among open source projects from China by AI-assisted commits →
Generate this report for your own repository with gitstats-action · All Gallery reports
Publishes the report to GitHub Pages on every push to main: turn on Pages for the gh-pages branch.
# .github/workflows/gitstats.yml
name: GitStats Report
on:
push:
branches: [main]
permissions:
contents: write
jobs:
gitstats:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
with:
fetch-depth: 0
- uses: shenxianpeng/gitstats-action@v1
with:
deploy-to-pages: true