kubernetes / perf-tests
Duplication

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

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 41% duplication:
    • 37,637 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 15,462 duplicated lines
  • 9,040 duplicates
system41% (15,462 lines)
Duplication per Extension
yaml71% (14,917 lines)
go3% (435 lines)
py4% (86 lines)
js9% (24 lines)
Duplication per Component (primary)
clusterloader2/pkg50% (13,076 lines)
clusterloader2/testing40% (1,539 lines)
clusterloader2/drivers45% (395 lines)
dns/cluster37% (141 lines)
perfdash7% (107 lines)
slo-monitor46% (48 lines)
network/benchmarks5% (40 lines)
compare/src6% (35 lines)
slo-monitor/src7% (32 lines)
perfdash/www6% (24 lines)
dns/dnsperfgo5% (13 lines)
dns/py1% (12 lines)
verify/boilerplate0% (0 lines)
verify0% (0 lines)
util-images/network0% (0 lines)
util-images/probes0% (0 lines)
util-images/access-tokens0% (0 lines)
util-images/sleep0% (0 lines)
clusterloader2/cmd0% (0 lines)
clusterloader2/api0% (0 lines)
dns/fixtures0% (0 lines)
dns/params0% (0 lines)
dns/jsonify0% (0 lines)
benchmark/cmd0% (0 lines)
benchmark/pkg0% (0 lines)

Duplication Between Components (50+ lines)

G clusterloader2/testing clusterloader2/testing dns/dnsperfgo dns/dnsperfgo clusterloader2/testing--dns/dnsperfgo 163

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 9,040 duplicates...
Size#FoldersFilesLinesCode
803 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0thanosrulerCust...
3568:4370 (18%)
2494:3296 (24%)
view
798 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
2376:3173 (24%)
2501:3298 (23%)
view
796 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
2376:3171 (24%)
3575:4370 (18%)
view
713 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
1209:1921 (22%)
1505:2217 (16%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
476:1187 (22%)
1505:2216 (16%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
1209:1920 (22%)
747:1458 (16%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
476:1187 (22%)
404:1115 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
476:1187 (22%)
747:1458 (16%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0prometheusCusto...
747:1458 (16%)
1505:2216 (16%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0thanosrulerCust...
747:1458 (16%)
1242:1953 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
1209:1920 (22%)
1242:1953 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0thanosrulerCust...
1505:2216 (16%)
1242:1953 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0thanosrulerCust...
747:1458 (16%)
404:1115 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
1209:1920 (22%)
404:1115 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0thanosrulerCust...
0prometheus-operator-0thanosrulerCust...
404:1115 (21%)
1242:1953 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0alertmanagerCus...
476:1187 (22%)
1209:1920 (22%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
476:1187 (22%)
1242:1953 (21%)
view
712 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0prometheusCusto...
0prometheus-operator-0thanosrulerCust...
1505:2216 (16%)
404:1115 (21%)
view
341 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0thanosrulerCust...
50:390 (10%)
33:373 (10%)
view
341 x 2 clusterloader2/pkg/prometheus/manifests
clusterloader2/pkg/prometheus/manifests
0prometheus-operator-0alertmanagerCus...
0prometheus-operator-0prometheusCusto...
50:390 (10%)
90:430 (7%)
view
Duplicated Units
The list of top 1 duplicated units.
See data for all 1 unit duplicate
Size#FoldersFilesLinesCode
21 x 2 clusterloader2/pkg/measurement/util
clusterloader2/pkg/measurement/util
pvcs.go
pvs.go
67:88 
74:95 
view