apache / incubator-seata
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
Learn more...
Duplication Overall
system15% (12,828 lines)
dependency graphs: 2D graph | 3D graph | 3D graph (with duplicates)...
Duplication per Extension
java15% (10,601 lines)
proto56% (902 lines)
tsx21% (329 lines)
sql23% (232 lines)
xml31% (191 lines)
js6% (188 lines)
ts25% (171 lines)
g42% (90 lines)
lua18% (52 lines)
py35% (42 lines)
css7% (18 lines)
yaml8% (12 lines)
Duplication per Component (primary)
sqlparser16% (2,758 lines)
rm-datasource18% (1,809 lines)
serializer32% (1,337 lines)
server11% (1,295 lines)
saga12% (1,260 lines)
compatible40% (1,007 lines)
core9% (620 lines)
console18% (526 lines)
config21% (523 lines)
script21% (286 lines)
integration-tx-api11% (196 lines)
common5% (191 lines)
namingserver20% (185 lines)
discovery7% (179 lines)
tcc31% (166 lines)
ext45% (118 lines)
seata-spring-autoconfigure4% (104 lines)
tm12% (92 lines)
integration9% (72 lines)
style21% (41 lines)
spring3% (39 lines)
metrics2% (12 lines)
rm5% (12 lines)
compressor0% (0 lines)
distribution0% (0 lines)
rocketmq0% (0 lines)
seata-spring-boot-starter0% (0 lines)

Duplication Between Components (50+ lines)

G compatible compatible saga saga compatible--saga 948 core core compatible--core 182 integration-tx-api integration-tx-api compatible--integration-tx-api 240 tcc tcc compatible--tcc 162 tm tm compatible--tm 156 spring spring compatible--spring 54 saga--tcc 127 serializer serializer core--serializer 858 server server core--server 252 namingserver namingserver namingserver--server 282 config config discovery discovery config--discovery 70

Download: SVG DOT (open online Graphviz editor)

Open 2D force graph... Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 2,568 duplicates...
Size#FoldersFilesLinesCode
161 x 2 sqlparser/seata-sqlparse...rser/antlr/mysql/parser
sqlparser/seata-sqlparse...rser/antlr/mysql/parser
246:406 (2%)
633:793 (2%)
view
111 x 2 rm-datasource/src/main/j...ce/sql/handler/kingbase
rm-datasource/src/main/j...urce/sql/handler/oracle
45:485 (74%)
46:486 (74%)
view
84 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
58:181 (94%)
59:182 (94%)
view
83 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
59:181 (93%)
58:180 (93%)
view
83 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
59:181 (93%)
59:181 (93%)
view
82 x 2 config/seata-config-core...in/java/io/seata/config
config/seata-config-core...org/apache/seata/config
28:179 (98%)
28:169 (100%)
view
75 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...qlparser/druid/kingbase
58:162 (96%)
57:161 (96%)
view
74 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
57:160 (94%)
58:161 (94%)
view
74 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
58:161 (94%)
58:161 (94%)
view
73 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
62:162 (93%)
62:162 (93%)
view
72 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
62:161 (92%)
62:161 (92%)
view
72 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
61:160 (92%)
62:161 (92%)
view
67 x 2 script/server/db
script/server/db
20:96 (100%)
20:96 (100%)
view
61 x 2 compatible/src/main/java/io/seata/saga/rm
saga/seata-saga-rm/src/m...rg/apache/seata/saga/rm
42:163 (98%)
41:162 (100%)
view
59 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
51:137 (95%)
51:137 (95%)
view
56 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...qlparser/druid/kingbase
49:131 (94%)
49:135 (94%)
view
55 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
49:130 (93%)
49:134 (93%)
view
55 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
49:134 (93%)
49:134 (93%)
view
54 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
54:136 (91%)
53:135 (91%)
view
54 x 2 rm-datasource/src/main/j...che/seata/rm/datasource
rm-datasource/src/main/j.../seata/rm/datasource/xa
136:231 (42%)
116:203 (38%)
view
53 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
53:134 (89%)
54:135 (89%)
view
53 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
53:130 (89%)
54:135 (89%)
view
51 x 2 compatible/src/main/java...a/saga/statelang/domain
saga/seata-saga-statelan...a/saga/statelang/domain
26:376 (98%)
25:375 (100%)
view
49 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
55:132 (61%)
52:129 (61%)
view
48 x 2 compatible/src/main/java...a/saga/statelang/domain
saga/seata-saga-statelan...a/saga/statelang/domain
38:99 (81%)
24:85 (97%)
view
47 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
52:125 (58%)
55:128 (58%)
view
47 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
55:128 (58%)
55:128 (58%)
view
46 x 2 rm-datasource/src/main/j.../datasource/undo/oracle
rm-datasource/src/main/j...m/datasource/undo/oscar
40:102 (93%)
42:104 (93%)
view
46 x 2 rm-datasource/src/main/j...atasource/undo/kingbase
rm-datasource/src/main/j...m/datasource/undo/oscar
41:103 (93%)
42:104 (93%)
view
46 x 2 rm-datasource/src/main/j...atasource/undo/kingbase
rm-datasource/src/main/j.../datasource/undo/oracle
41:103 (93%)
40:102 (93%)
view
44 x 2 sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...parser/druid/postgresql
68:135 (74%)
64:131 (74%)
view
44 x 2 sqlparser/seata-sqlparse...parser/druid/postgresql
sqlparser/seata-sqlparse...lparser/druid/sqlserver
64:131 (74%)
70:133 (72%)
view
44 x 2 sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...lparser/druid/sqlserver
68:135 (74%)
70:133 (72%)
view
44 x 2 compatible/src/main/java...a/saga/statelang/domain
saga/seata-saga-statelan...a/saga/statelang/domain
28:330 (97%)
27:329 (100%)
view
44 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...lparser/druid/sqlserver
69:136 (74%)
70:133 (72%)
view
44 x 2 sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...parser/druid/postgresql
69:136 (74%)
64:131 (74%)
view
43 x 2 rm-datasource/src/main/j...eata/rm/datasource/undo
rm-datasource/src/main/j...a/rm/datasource/undo/dm
131:191 (15%)
64:124 (43%)
view
43 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...parser/druid/postgresql
68:130 (72%)
64:130 (72%)
view
43 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...lparser/druid/sqlserver
68:134 (72%)
70:132 (70%)
view
43 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...parser/druid/postgresql
68:134 (72%)
64:130 (72%)
view
43 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...lparser/druid/sqlserver
68:130 (72%)
70:132 (70%)
view
42 x 2 config/seata-config-core...in/java/io/seata/config
config/seata-config-core...org/apache/seata/config
29:315 (97%)
29:311 (100%)
view
41 x 2 rm-datasource/src/main/j...atasource/exec/kingbase
rm-datasource/src/main/j.../datasource/exec/oracle
59:136 (91%)
59:136 (91%)
view
41 x 2 rm-datasource/src/main/j...atasource/exec/kingbase
rm-datasource/src/main/j...m/datasource/exec/oscar
59:136 (91%)
59:136 (91%)
view
41 x 2 rm-datasource/src/main/j.../datasource/exec/oracle
rm-datasource/src/main/j...m/datasource/exec/oscar
59:136 (91%)
59:136 (91%)
view
41 x 2 compatible/src/main/java...eata/saga/engine/config
saga/seata-saga-spring/s...eata/saga/engine/config
141:293 (37%)
125:202 (41%)
view
41 x 2 compatible/src/main/java...eata/saga/engine/config
saga/seata-saga-spring/s...eata/saga/engine/config
75:136 (37%)
66:120 (41%)
view
40 x 2 sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
77:127 (51%)
76:126 (44%)
view
40 x 2 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
76:126 (44%)
77:127 (51%)
view
40 x 2 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
76:126 (44%)
77:127 (51%)
view
Duplicated Units
The list of top 50 duplicated units.
See data for all 64 unit duplicates...
Size#FoldersFilesLinesCode
34 x 2 rm-datasource/src/main/j...eata/rm/datasource/undo
rm-datasource/src/main/j...a/rm/datasource/undo/dm
158:193 
91:126 
view
28 x 2 discovery/seata-discover...y/registry/namingserver
discovery/seata-discover...discovery/registry/raft
556:589 
506:539 
view
26 x 4 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
64:94 
65:95 
64:94 
64:94 
view
26 x 2 saga/seata-saga-rm/src/m...rg/apache/seata/saga/rm
compatible/src/main/java/io/seata/saga/rm
128:158 
129:159 
view
24 x 2 saga/seata-saga-rm/src/m...rg/apache/seata/saga/rm
compatible/src/main/java/io/seata/saga/rm
85:114 
86:115 
view
24 x 2 tcc/src/main/java/org/ap.../rm/tcc/remoting/parser
compatible/src/main/java.../rm/tcc/remoting/parser
51:78 
35:62 
view
23 x 2 integration-tx-api/src/m...tion/tx/api/interceptor
compatible/src/main/java...tion/tx/api/interceptor
100:129 
63:92 
view
21 x 4 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
154:178 
153:177 
154:178 
124:148 
view
20 x 3 rm-datasource/src/main/j...ce/sql/handler/kingbase
rm-datasource/src/main/j...urce/sql/handler/oracle
rm-datasource/src/main/j...ource/sql/handler/oscar
506:539 
507:540 
2622:2647 
view
19 x 2 integration-tx-api/src/m...tion/tx/api/interceptor
compatible/src/main/java...tion/tx/api/interceptor
169:195 
34:60 
view
19 x 2 integration-tx-api/src/m...tion/tx/api/interceptor
compatible/src/main/java...tion/tx/api/interceptor
132:153 
95:116 
view
18 x 2 integration-tx-api/src/m...tion/tx/api/interceptor
compatible/src/main/java...tion/tx/api/interceptor
287:312 
71:96 
view
18 x 4 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
58:78 
55:75 
58:78 
44:64 
view
18 x 3 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
65:86 
64:85 
65:86 
view
15 x 3 rm-datasource/src/main/j...atasource/undo/kingbase
rm-datasource/src/main/j.../datasource/undo/oracle
rm-datasource/src/main/j...m/datasource/undo/oscar
53:69 
52:68 
54:70 
view
14 x 2 rm-datasource/src/main/j...eata/rm/datasource/undo
rm-datasource/src/main/j...a/rm/datasource/undo/dm
132:148 
65:81 
view
14 x 4 rm-datasource/src/main/j...atasource/undo/kingbase
rm-datasource/src/main/j.../datasource/undo/oracle
rm-datasource/src/main/j...m/datasource/undo/oscar
rm-datasource/src/main/j...a/rm/datasource/undo/dm
84:99 
83:98 
85:100 
168:183 
view
13 x 2 config/seata-config-core...in/java/io/seata/config
config/seata-config-core...org/apache/seata/config
302:316 
298:312 
view
13 x 5 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
92:107 
92:107 
93:108 
93:108 
93:108 
view
13 x 5 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
104:118 
89:103 
88:102 
89:103 
89:103 
view
13 x 2 saga/seata-saga-statemac...nel/provider/properties
saga/seata-saga-statemac...nel/provider/properties
22:37 
24:39 
view
13 x 2 spring/src/main/java/org...g/annotation/datasource
compatible/src/main/java...g/annotation/datasource
38:55 
43:60 
view
13 x 2 tcc/src/main/java/org/ap...eata/rm/tcc/interceptor
compatible/src/main/java...eata/rm/tcc/interceptor
148:163 
61:76 
view
12 x 4 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
119:133 
120:134 
119:133 
94:108 
view
12 x 4 rm-datasource/src/main/j...asource/exec/postgresql
rm-datasource/src/main/j...atasource/exec/kingbase
rm-datasource/src/main/j.../datasource/exec/oracle
rm-datasource/src/main/j...m/datasource/exec/oscar
103:116 
99:112 
99:112 
99:112 
view
10 x 2 tm/src/main/java/org/apache/seata/tm/api
compatible/src/main/java/io/seata/tm/api
107:118 
110:121 
view
10 x 4 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
72:84 
73:85 
73:85 
73:85 
view
10 x 4 rm-datasource/src/main/j...ce/sql/handler/kingbase
rm-datasource/src/main/j...urce/sql/handler/oracle
rm-datasource/src/main/j...ource/sql/handler/oscar
rm-datasource/src/main/j...tasource/sql/handler/dm
541:552 
542:553 
2649:2660 
834:845 
view
10 x 2 server/src/main/java/org...ver/storage/redis/store
server/src/main/java/org...rver/storage/redis/lock
85:97 
77:89 
view
9 x 2 integration-tx-api/src/m...api/interceptor/handler
compatible/src/main/java...api/interceptor/handler
276:286 
48:58 
view
9 x 4 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...parser/druid/postgresql
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...eata/sqlparser/druid/dm
100:110 
72:82 
100:110 
74:84 
view
9 x 2 sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
99:109 
99:109 
view
9 x 2 console/src/main/resourc.../console-fe/src/service
console/src/main/resourc.../console-fe/src/service
52:63 
42:53 
view
8 x 4 config/seata-config-zk/s.../apache/seata/config/zk
config/seata-config-naco...ache/seata/config/nacos
config/seata-config-cons...che/seata/config/consul
config/seata-config-etcd...ache/seata/config/etcd3
353:364 
326:337 
285:296 
309:320 
view
8 x 2 server/src/main/java/org...ver/storage/redis/store
server/src/main/java/org...server/storage/db/store
601:610 
238:248 
view
7 x 2 namingserver/src/main/ja...ta/namingserver/manager
server/src/main/java/org.../server/cluster/manager
105:113 
99:107 
view
7 x 3 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...parser/druid/postgresql
sqlparser/seata-sqlparse...lparser/druid/sqlserver
67:77 
118:126 
73:82 
view
7 x 2 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...parser/druid/postgresql
101:111 
149:159 
view
7 x 5 sqlparser/seata-sqlparse...a/sqlparser/druid/mysql
sqlparser/seata-sqlparse...parser/druid/postgresql
sqlparser/seata-sqlparse...qlparser/druid/kingbase
sqlparser/seata-sqlparse.../sqlparser/druid/oracle
sqlparser/seata-sqlparse...a/sqlparser/druid/oscar
124:133 
172:181 
111:120 
108:117 
111:120 
view
7 x 7 rm-datasource/src/main/j...ource/sql/handler/mysql
rm-datasource/src/main/j.../sql/handler/postgresql
rm-datasource/src/main/j...ce/sql/handler/kingbase
rm-datasource/src/main/j...e/sql/handler/sqlserver
rm-datasource/src/main/j...urce/sql/handler/oracle
rm-datasource/src/main/j...ource/sql/handler/oscar
rm-datasource/src/main/j...tasource/sql/handler/dm
1108:1117 
363:372 
493:502 
797:805 
494:503 
2610:2619 
798:807 
view
7 x 2 discovery/seata-discover...scovery/registry/consul
discovery/seata-discover...iscovery/registry/etcd3
164:172 
185:193 
view
7 x 2 core/src/main/java/org/apache/seata/core/model
compatible/src/main/java/io/seata/core/model
184:192 
167:175 
view
7 x 2 core/src/main/java/org/apache/seata/core/exception
compatible/src/main/java/io/seata/core/exception
161:169 
163:171 
view
7 x 2 core/src/main/java/org/apache/seata/core/event
server/src/main/java/org.../server/limit/ratelimit
95:103 
111:119 
view
7 x 2 server/src/main/java/org...ver/storage/redis/store
server/src/main/java/org...ver/storage/redis/store
158:166 
105:113 
view
7 x 2 server/src/main/java/org...ver/storage/redis/store
server/src/main/java/org...ver/storage/redis/store
171:179 
116:124 
view
7 x 2 tcc/src/main/java/org/ap.../rm/tcc/remoting/parser
compatible/src/main/java.../rm/tcc/remoting/parser
95:103 
80:88 
view
6 x 2 serializer/seata-seriali...rializer/seata/protocol
core/src/main/java/org/apache/seata/core/protocol
49:56 
54:61 
view
6 x 2 tm/src/main/java/org/apache/seata/tm/api
compatible/src/main/java/io/seata/tm/api
74:81 
75:82 
view
6 x 2 config/seata-config-core...in/java/io/seata/config
config/seata-config-core...org/apache/seata/config
57:64 
41:48 
view