Code Ownership

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 Tracked
4,874
in the current tree
Bus Factor
3
3 authors are primary owner of 2,710 of 4,874 files
Single-Owner Files
2,110
43.3% of tracked files
Contributors
526
authors who changed files

Bus factor risk — single-owner files

Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.

FileSole ownerCommits
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/java/org/apache/dolphinscheduler/plugin/registry/jdbc/JdbcRegistry.javaWenjun Ruan11
dolphinscheduler-master/src/test/resources/logback.xmlWenjun Ruan11
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/WorkflowEngine.javaWenjun Ruan6
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/server/JdkDynamicServerHandler.javaWenjun Ruan6
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/NettyRemotingClient.javaWenjun Ruan6
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/AlertServerHeartBeat.javaWenjun Ruan6
.github/workflows/pull-request-target-robot.ymlxiangzihao5
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/resources/mysql_registry_init.sqlWenjun Ruan5
.github/workflows/mergeable.ymlxiangzihao4
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/graph/SuccessorFlowAdjuster.javaWenjun Ruan4
Table: the 100 most-changed of 2,110 single-owner files
FileSole ownerCommits
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/java/org/apache/dolphinscheduler/plugin/registry/jdbc/JdbcRegistry.javaWenjun Ruan11
dolphinscheduler-master/src/test/resources/logback.xmlWenjun Ruan11
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/WorkflowEngine.javaWenjun Ruan6
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/server/JdkDynamicServerHandler.javaWenjun Ruan6
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/NettyRemotingClient.javaWenjun Ruan6
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/AlertServerHeartBeat.javaWenjun Ruan6
.github/workflows/pull-request-target-robot.ymlxiangzihao5
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/resources/mysql_registry_init.sqlWenjun Ruan5
.github/workflows/mergeable.ymlxiangzihao4
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/graph/SuccessorFlowAdjuster.javaWenjun Ruan4
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/client/LogicTaskExecutorClientDelegator.javaWenjun Ruan4
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/lifecycle/event/TaskKillLifecycleEvent.javaWenjun Ruan4
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/lifecycle/event/TaskPauseLifecycleEvent.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/serialize/JsonSerializer.javaWenjun Ruan4
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/integration/cases/WorkflowSchedulingTestCase.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/pom.xmlWenjun Ruan4
dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/log/TaskInstanceLogHeader.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/server/ServerMethodInvokerImpl.javaWenjun Ruan4
dolphinscheduler-worker/src/test/resources/logback.xmlWenjun Ruan4
dolphinscheduler-registry/dolphinscheduler-registry-api/src/main/java/org/apache/dolphinscheduler/registry/api/ha/AbstractHAServer.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/SyncClientMethodInvoker.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/server/NettyRemotingServer.javaWenjun Ruan4
dolphinscheduler-alert/dolphinscheduler-alert-plugins/dolphinscheduler-alert-api/src/main/java/org/apache/dolphinscheduler/alert/api/AlertChannel.javaWenjun Ruan4
dolphinscheduler-master/src/test/resources/it/pause/workflow_with_three_parallel_three_fake_task_success.yamlWenjun Ruan4
dolphinscheduler-worker/src/main/java/org/apache/dolphinscheduler/server/worker/rpc/StreamingTaskInstanceOperatorImpl.javaWenjun Ruan4
dolphinscheduler-microbench/src/main/java/org/apache/dolphinscheduler/microbench/rpc/RpcBenchMarkTest.javaWenjun Ruan4
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/JdkDynamicRpcClientProxyFactory.javaWenjun Ruan4
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/java/org/apache/dolphinscheduler/plugin/registry/jdbc/mapper/JdbcRegistryDataMapper.javaWenjun Ruan4
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/java/org/apache/dolphinscheduler/plugin/registry/jdbc/mapper/JdbcRegistryLockMapper.javaWenjun Ruan4
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/test/java/org/apache/dolphinscheduler/plugin/registry/jdbc/PostgresqlJdbcRegistryTestCase.javaWenjun Ruan4
dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/repository/impl/AlertDaoTest.javaWenjun Ruan4
dolphinscheduler-alert/dolphinscheduler-alert-server/src/main/java/org/apache/dolphinscheduler/alert/config/AlertConfig.javaWenjun Ruan4
dolphinscheduler-alert/dolphinscheduler-alert-server/src/main/java/org/apache/dolphinscheduler/alert/registry/AlertRegistryClient.javaWenjun Ruan4
dolphinscheduler-alert/dolphinscheduler-alert-server/src/main/java/org/apache/dolphinscheduler/alert/rpc/AlertRpcServer.javaWenjun Ruan4
dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/model/HeartBeat.javaWenjun Ruan4
dolphinscheduler-ui/vite.config.tssongjianet4
dolphinscheduler-e2e/dolphinscheduler-e2e-case/src/test/java/org/apache/dolphinscheduler/e2e/cases/tasks/PythonTaskE2ETest.javaxiangzihao3
dolphinscheduler-storage-plugin/dolphinscheduler-storage-api/src/main/java/org/apache/dolphinscheduler/plugin/storage/api/constants/StorageConstants.javaxiangzihao3
dolphinscheduler-dist/src/main/docker/alert-server.dockerfilexiangzihao3
dolphinscheduler-dist/src/main/docker/api-server.dockerfilexiangzihao3
dolphinscheduler-dist/src/main/docker/master-server.dockerfilexiangzihao3
dolphinscheduler-dist/src/main/docker/standalone-server.dockerfilexiangzihao3
dolphinscheduler-dist/src/main/docker/tools.dockerfilexiangzihao3
dolphinscheduler-dist/src/main/docker/worker-server.dockerfilexiangzihao3
script/install-plugins.shxiangzihao3
dolphinscheduler-dao/src/main/resources/org/apache/dolphinscheduler/dao/mapper/TaskInstanceContextMapper.xmlxiangzihao3
dolphinscheduler-dist/src/main/assembly/assembly-plugins.shxiangzihao3
.github/workflows/schema-check/mysql/start-job.shxiangzihao3
.github/workflows/schema-check/postgresql/start-job.shxiangzihao3
.github/boring-cyborg.ymlxiangzihao3
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/TenantDao.javaWenjun Ruan3
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/TenantDaoImpl.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/IWorkflowRepository.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/client/ITaskExecutorClient.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/client/ITaskExecutorClientDelegator.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/client/TaskExecutorClient.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/lifecycle/event/TaskRunningLifecycleEvent.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/task/lifecycle/handler/AbstractTaskLifecycleEventHandler.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/workflow/policy/ContinueWorkflowFailureStrategy.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/workflow/policy/EndWorkflowFailureStrategy.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/workflow/policy/IWorkflowFailureStrategy.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/rpc/WorkflowControlClient.javaWenjun Ruan3
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-jdbc/src/main/java/org/apache/dolphinscheduler/plugin/registry/jdbc/JdbcRegistryProperties.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/MasterCoordinator.javaWenjun Ruan3
dolphinscheduler-extract/pom.xmlWenjun Ruan3
dolphinscheduler-registry/dolphinscheduler-registry-api/src/main/java/org/apache/dolphinscheduler/registry/api/utils/RegistryUtils.javaWenjun Ruan3
dolphinscheduler-worker/src/main/java/org/apache/dolphinscheduler/server/worker/config/WorkerServerLoadProtection.javaWenjun Ruan3
dolphinscheduler-worker/src/test/java/org/apache/dolphinscheduler/server/worker/config/WorkerServerLoadProtectionTest.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/server/ServerMethodInvoker.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/test/java/org/apache/dolphinscheduler/extract/base/client/ClientsTest.javaWenjun Ruan3
dolphinscheduler-task-executor/src/main/java/org/apache/dolphinscheduler/task/executor/log/TaskExecutorMDCUtils.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/NettyClientHandler.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/cluster/BaseServerMetadata.javaWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/system/event/MasterFailoverEvent.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/RpcMethod.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/client/ClientInvocationHandler.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-base/src/main/java/org/apache/dolphinscheduler/extract/base/future/ResponseFuture.javaWenjun Ruan3
dolphinscheduler-master/src/test/java/org/apache/dolphinscheduler/server/master/cluster/WorkerGroupChangeNotifierTest.javaWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-master/pom.xmlWenjun Ruan3
dolphinscheduler-extract/dolphinscheduler-extract-worker/pom.xmlWenjun Ruan3
dolphinscheduler-master/src/main/java/org/apache/dolphinscheduler/server/master/engine/system/event/AbstractSystemEvent.javaWenjun Ruan3
dolphinscheduler-dao-plugin/dolphinscheduler-dao-api/src/main/java/org/apache/dolphinscheduler/dao/plugin/api/DaoPluginConfiguration.javaWenjun Ruan3
dolphinscheduler-task-plugin/dolphinscheduler-task-api/src/main/java/org/apache/dolphinscheduler/plugin/task/api/parser/TaskOutputParameterParser.javaWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/backfill/workflow_with_one_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/pause/workflow_with_one_fake_task_failed.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/pause/workflow_with_one_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/scheduling/workflow_with_one_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_global_param.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_one_fake_task_failed.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_one_fake_task_failed_with_retry.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_one_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_three_parallel_three_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_two_parallel_fake_task_failed.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_two_parallel_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_two_serial_fake_task_failed.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/start/workflow_with_two_serial_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/stop/workflow_with_one_fake_task_failed.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/stop/workflow_with_one_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-master/src/test/resources/it/stop/workflow_with_three_parallel_three_fake_task_success.yamlWenjun Ruan3
dolphinscheduler-registry/dolphinscheduler-registry-plugins/dolphinscheduler-registry-zookeeper/src/main/java/org/apache/dolphinscheduler/plugin/registry/zookeeper/ZookeeperRegistryAutoConfiguration.javaWenjun Ruan3

Ownership by author

Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.

AuthorFiles ownedSolely ownedFiles touched
Wenjun Ruan1,5038512,453
xiangzihao8371551,575
songjianet370230593
Jay Chung218124572
kezhenxu9413741525
旺阳11522281
Tq10890247
Kerwin8913522
Eric Gao87351,107
JieguangZhou8451257
qiaozhanwei780211
suyc7624339
小可耐751141
calvin6113308
QuakeWang4845110
caishunfeng467466
npofsi koi | N/P硅444371
Kirs420268
xujiaqiang41569
Rick Cheng3818307
lile31984
BaoLiang300235
Aaron Wang249211
qianli202222670
chenrj221566

Showing top 25 of 526 contributors.

Most shared files

Files touched by the most people — shared code where changes are most likely to need coordination.

FileContributorsPrimary ownerOwner share
pom.xml99qiaozhanwei10.3%
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/enums/Status.java65JinYong Li10.8%
dolphinscheduler-dist/release-docs/LICENSE58break6010.0%
dolphinscheduler-service/src/main/java/org/apache/dolphinscheduler/service/process/ProcessService.java56JinYong Li20.0%
tools/dependencies/known-dependencies.txt55kezhenxu9411.6%
dolphinscheduler-ui/src/locales/en_US/project.ts53xiangzihao13.0%
dolphinscheduler-ui/src/locales/zh_CN/project.ts52xiangzihao13.3%
README.md51David Zollo16.9%
dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/UsersServiceTest.java46Wenjun Ruan21.4%
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java45Wenjun Ruan20.7%
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql42Wenjun Ruan18.2%
dolphinscheduler-ui/src/views/projects/task/components/node/format-data.ts42JieguangZhou15.3%
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/ResourcesController.java41BaoLiang10.1%
dolphinscheduler-service/src/test/java/org/apache/dolphinscheduler/service/process/ProcessServiceTest.java39Wenjun Ruan16.5%
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql39xiangzihao16.0%
dolphinscheduler-ui/src/views/projects/task/components/node/types.ts39JieguangZhou15.7%
dolphinscheduler-api/pom.xml38qiaozhanwei15.7%
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ResourcesServiceImpl.java38Wenjun Ruan15.4%
dolphinscheduler-common/src/main/resources/common.properties38David Zollo15.7%
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/controller/DataSourceController.java38Wenjun Ruan7.4%