mysql / mysql-server
Components

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 29 components.
  • 23,177 files, 4,336,943 LOC (100.0% vs. main code).
  • "extra" is biggest, containing 52.42% of LOC.
  • "doxygen_resources" is smallest, containing 0% of LOC.


extra2273595 LOC (52%) 12,361 files
storage766060 LOC (17%) 2,677 files
sql444853 LOC (10%) 1,559 files
mysql-test230921 LOC (5%) 2,235 files
router150640 LOC (3%) 1,215 files
plugin126140 LOC (2%) 986 files
unittest109714 LOC (2%) 529 files
strings52528 LOC (1%) 36 files
include31008 LOC (<1%) 509 files
mysys24374 LOC (<1%) 125 files
client22232 LOC (<1%) 70 files
sql-common17049 LOC (<1%) 33 files
components14310 LOC (<1%) 178 files
libs13926 LOC (<1%) 144 files
packaging12921 LOC (<1%) 96 files
scripts11447 LOC (<1%) 182 files
cmake10790 LOC (<1%) 72 files
libmysql8049 LOC (<1%) 58 files
utilities4485 LOC (<1%) 7 files
share4379 LOC (<1%) 26 files
ROOT3101 LOC (<1%) 4 files
vio2434 LOC (<1%) 10 files
testclients997 LOC (<1%) 2 files
libchangestreams484 LOC (<1%) 11 files
libbinlogevents168 LOC (<1%) 28 files
vector-common146 LOC (<1%) 3 files
support-files142 LOC (<1%) 3 files
libservices41 LOC (<1%) 17 files
doxygen_resources9 LOC (<1%) 1 file
Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
sql44666 commits (27%)
storage32411 commits (19%)
mysql-test10655 commits (6%)
include9265 commits (5%)
client5548 commits (3%)
unittest4205 commits (2%)
cmake3343 commits (2%)
packaging2663 commits (1%)
plugin2293 commits (1%)
scripts2044 commits (1%)
router1707 commits (1%)
mysys1600 commits (<1%)
ROOT1599 commits (<1%)
libmysql1038 commits (<1%)
sql-common963 commits (<1%)
vio575 commits (<1%)
strings416 commits (<1%)
libbinlogevents346 commits (<1%)
components319 commits (<1%)
libservices232 commits (<1%)
utilities207 commits (<1%)
extra155 commits (<1%)
testclients65 commits (<1%)
libs61 commits (<1%)
share30 commits (<1%)
libchangestreams23 commits (<1%)
doxygen_resources22 commits (<1%)
support-files20 commits (<1%)
vector-common5 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2005
storage
8985
19270
13954
10912
17426
5860
16872
21809
23819
11152
17373
34115
38111
36294
34844
21888
10000
10010
11191
8453
3368
sql
5162
10194
8987
6683
9557
5786
8024
13617
26204
11307
16737
21701
14262
17031
22814
32573
11676
6346
17048
15575
15296
extra
1228
10665
5366
73
175
1
69
71
223
164
plugin
3258
4453
3502
2642
2927
2267
1842
3970
1407
432
377
164
35
71
39
76
31
18
router
3050
4156
2943
1589
1873
971
821
730
unittest
1921
2636
2166
1631
2194
1012
1360
2923
2835
628
760
2068
2045
1704
619
360
14
38
include
1328
2350
1549
1052
1240
712
1238
2425
3713
1637
1647
2281
2367
1608
3032
3137
1142
458
1122
1257
793
mysql-test
298
2140
639
627
885
687
829
1405
2618
1628
2891
3493
2217
3886
6449
7911
3427
3812
2754
1018
590
scripts
533
899
1022
856
880
41
1443
133
204
205
226
273
157
265
374
426
140
45
121
components
543
723
463
270
259
168
60
320
238
47
packaging
259
907
662
458
547
396
903
1126
1737
840
652
593
196
40
87
286
mysys
442
529
486
237
349
131
411
1093
1000
524
335
151
119
51
268
65
64
25
38
18
cmake
225
596
552
361
450
211
504
484
497
328
321
845
682
379
1091
1890
56
client
267
395
349
217
298
86
244
381
783
322
432
752
519
485
796
981
613
233
457
483
563
libs
264
385
220
libmysql
218
294
262
152
179
90
125
201
282
42
18
192
221
21
334
40
34
31
18
6
sql-common
123
189
223
97
123
68
133
163
230
67
77
117
41
36
2
strings
143
167
137
95
89
44
84
336
443
269
52
34
24
5
5
libbinlogevents
84
148
174
104
104
12
62
141
115
55
157
173
share
79
128
78
53
52
133
130
libservices
51
117
99
82
82
63
136
182
9
49
33
20
13
73
66
9
vio
38
50
60
43
48
20
71
154
185
60
18
13
37
88
42
48
21
19
25
libchangestreams
33
44
48
28
22
utilities
30
28
36
18
35
21
43
82
157
ROOT
13
30
35
27
54
35
79
92
92
161
100
338
389
165
363
433
23
support-files
9
12
9
8
4
2
2
testclients
7
9
13
7
6
7
10
30
vector-common
4
6
doxygen_resources
3
4
3
2
2
5
3


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G sql sql sql--sql 109 plugin plugin sql--plugin 32 unittest unittest sql--unittest 31 libmysql libmysql sql--libmysql 23 components components sql--components 21 client client sql--client 19 sql-common sql-common sql--sql-common 18 mysys mysys sql--mysys 17 mysql-test mysql-test sql--mysql-test 15 include include sql--include 12 storage storage storage--sql 38 storage--storage 92 storage--plugin 27 storage--libmysql 16 storage--components 16 storage--client 18 storage--mysys 15 storage--include 13 router router router--sql 14 router--router 43 plugin--router 17 plugin--plugin 39 plugin--unittest 32 plugin--libmysql 21 plugin--components 19 plugin--client 17 unittest--storage 29 unittest--router 16 unittest--unittest 30 unittest--libmysql 18 unittest--client 17 libmysql--libmysql 15 libmysql--components 14 libmysql--client 14 components--unittest 16 components--components 22 components--client 13 components--mysys 13 client--client 21 sql-common--plugin 13 sql-common--components 14 sql-common--client 12 sql-common--mysys 12 mysys--plugin 14 mysys--libmysql 13 mysys--client 12 mysys--mysys 15 strings strings mysys--strings 12 mysql-test--mysql-test 16 packaging packaging packaging--packaging 12


2025-05-09 20:11