facebookincubator / OnlineSchemaChange
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

File Change Frequency Overall
File Change Frequency Overall
The number of recorded file updates
  • There are 25 files with 6,825 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 1 files changed 51-100 times (2,084 lines of code)
    • 3 files changed 21-50 times (2,156 lines of code)
    • 9 files changed 6-20 times (2,068 lines of code)
    • 12 files changed 1-5 times (517 lines of code)
0% | 30% | 31% | 30% | 7%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
sql, py, md, txt, rst, cfg, gitignore, json, yml
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 30% | 31% | 30% | 7%
cfg0% | 0% | 0% | 0% | 100%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
core/lib/payload0% | 78% | 0% | 20% | 1%
core/lib/sqlparse0% | 0% | 71% | 28% | 0%
core/lib0% | 0% | 42% | 36% | 21%
core/commands0% | 0% | 0% | 66% | 33%
ROOT0% | 0% | 0% | 92% | 8%
core0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 25)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
copy.py
in core/lib/payload
2084 119 30 1807 74 14
diff.py
in core/lib/sqlparse
714 30 30 1004 24 7
sql.py
in core/lib
612 46 45 1804 23 10
create.py
in core/lib/sqlparse
830 11 30 1787 21 10
base.py
in core/lib/payload
339 35 30 1528 18 9
copy.py
in core/commands
354 4 30 1804 18 8
cleanup.py
in core/lib/payload
203 16 30 1732 16 8
__init__.py
in core/lib/sqlparse
32 - 30 1004 15 8
constant.py
in core/lib
36 - 44 1804 15 8
models.py
in core/lib/sqlparse
596 58 30 1738 15 6
error.py
in core/lib
380 5 44 1717 13 8
util.py
in core/lib
105 11 371 1528 8 5
setup.py
in root
23 - 30 1788 7 4
mysql_version.py
in core/lib
96 13 371 1606 5 5
db.py
in core/lib
106 14 371 1786 5 5
base.py
in core/commands
75 10 371 1593 4 4
__init__.py
in core/commands
8 - 371 1004 3 3
direct.py
in core/lib/payload
28 1 371 1004 3 3
cleanup.py
in core/commands
39 3 371 1004 3 3
direct.py
in core/commands
55 3 371 1004 3 3
hook.py
in core/lib
105 11 371 1004 3 3
__init__.py
in core/lib
1 - 956 1004 2 2
__init__.py
in core/lib/payload
1 - 956 1004 2 2
1 - 956 1004 2 2
cfg
setup.cfg
in root
2 - 1788 1788 1 1
Files With Most Contributors (Top 25)
Files sorted by the number of unique email addresses found in commits.

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
copy.py
in core/lib/payload
2084 119 30 1807 74 14
diff.py
in core/lib/sqlparse
714 30 30 1004 24 7
sql.py
in core/lib
612 46 45 1804 23 10
create.py
in core/lib/sqlparse
830 11 30 1787 21 10
copy.py
in core/commands
354 4 30 1804 18 8
base.py
in core/lib/payload
339 35 30 1528 18 9
cleanup.py
in core/lib/payload
203 16 30 1732 16 8
models.py
in core/lib/sqlparse
596 58 30 1738 15 6
constant.py
in core/lib
36 - 44 1804 15 8
__init__.py
in core/lib/sqlparse
32 - 30 1004 15 8
error.py
in core/lib
380 5 44 1717 13 8
util.py
in core/lib
105 11 371 1528 8 5
setup.py
in root
23 - 30 1788 7 4
mysql_version.py
in core/lib
96 13 371 1606 5 5
db.py
in core/lib
106 14 371 1786 5 5
base.py
in core/commands
75 10 371 1593 4 4
direct.py
in core/commands
55 3 371 1004 3 3
cleanup.py
in core/commands
39 3 371 1004 3 3
__init__.py
in core/commands
8 - 371 1004 3 3
hook.py
in core/lib
105 11 371 1004 3 3
direct.py
in core/lib/payload
28 1 371 1004 3 3
__init__.py
in core/lib
1 - 956 1004 2 2
__init__.py
in core/lib/payload
1 - 956 1004 2 2
1 - 956 1004 2 2
cfg
setup.cfg
in root
2 - 1788 1788 1 1
Correlations

File Size vs. Number of Changes: 25 points

core/commands/copy.py x: 354 lines of code y: 18 # changes core/lib/payload/base.py x: 339 lines of code y: 18 # changes core/lib/payload/cleanup.py x: 203 lines of code y: 16 # changes core/lib/payload/copy.py x: 2084 lines of code y: 74 # changes core/lib/sqlparse/__init__.py x: 32 lines of code y: 15 # changes core/lib/sqlparse/create.py x: 830 lines of code y: 21 # changes core/lib/sqlparse/diff.py x: 714 lines of code y: 24 # changes core/lib/sqlparse/models.py x: 596 lines of code y: 15 # changes setup.py x: 23 lines of code y: 7 # changes core/lib/constant.py x: 36 lines of code y: 15 # changes core/lib/error.py x: 380 lines of code y: 13 # changes core/lib/sql.py x: 612 lines of code y: 23 # changes core/commands/__init__.py x: 8 lines of code y: 3 # changes core/commands/cleanup.py x: 39 lines of code y: 3 # changes core/commands/direct.py x: 55 lines of code y: 3 # changes core/lib/db.py x: 106 lines of code y: 5 # changes core/lib/hook.py x: 105 lines of code y: 3 # changes core/lib/payload/direct.py x: 28 lines of code y: 3 # changes core/lib/util.py x: 105 lines of code y: 8 # changes core/commands/base.py x: 75 lines of code y: 4 # changes core/lib/mysql_version.py x: 96 lines of code y: 5 # changes core/__init__.py x: 1 lines of code y: 2 # changes setup.cfg x: 2 lines of code y: 1 # changes
74.0
# changes
  min: 1.0
  average: 12.12
  25th percentile: 3.0
  median: 7.0
  75th percentile: 17.0
  max: 74.0
0 2084.0
lines of code
min: 1.0 | average: 273.0 | 25th percentile: 25.5 | median: 96.0 | 75th percentile: 367.0 | max: 2084.0

Number of Contributors vs. Number of Changes: 25 points

core/commands/copy.py x: 8 # contributors y: 18 # changes core/lib/payload/base.py x: 9 # contributors y: 18 # changes core/lib/payload/cleanup.py x: 8 # contributors y: 16 # changes core/lib/payload/copy.py x: 14 # contributors y: 74 # changes core/lib/sqlparse/__init__.py x: 8 # contributors y: 15 # changes core/lib/sqlparse/create.py x: 10 # contributors y: 21 # changes core/lib/sqlparse/diff.py x: 7 # contributors y: 24 # changes core/lib/sqlparse/models.py x: 6 # contributors y: 15 # changes setup.py x: 4 # contributors y: 7 # changes core/lib/error.py x: 8 # contributors y: 13 # changes core/lib/sql.py x: 10 # contributors y: 23 # changes core/commands/__init__.py x: 3 # contributors y: 3 # changes core/lib/db.py x: 5 # contributors y: 5 # changes core/lib/util.py x: 5 # contributors y: 8 # changes core/commands/base.py x: 4 # contributors y: 4 # changes core/__init__.py x: 2 # contributors y: 2 # changes setup.cfg x: 1 # contributors y: 1 # changes
74.0
# changes
  min: 1.0
  average: 12.12
  25th percentile: 3.0
  median: 7.0
  75th percentile: 17.0
  max: 74.0
0 14.0
# contributors
min: 1.0 | average: 5.64 | 25th percentile: 3.0 | median: 5.0 | 75th percentile: 8.0 | max: 14.0