microsoft / SqlNexus
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
  • 30% duplication:
    • 14,868 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 4,603 duplicated lines
  • 356 duplicates
system30% (4,603 lines)
Duplication per Extension
cs31% (4,119 lines)
htm25% (303 lines)
cmd56% (141 lines)
ps116% (40 lines)
Duplication per Component (primary)
sqlnexus32% (3,200 lines)
RowsetImportEngine38% (877 lines)
sqlnexus/Help26% (303 lines)
PerfmonImporter28% (42 lines)
Setup-Related16% (40 lines)
DataCollectors/Diag2008100% (36 lines)
DataCollectors/Diag2008R2100% (36 lines)
DataCollectors/Diag201297% (35 lines)
DataCollectors/Diag201494% (34 lines)
BulkLoadEx0% (0 lines)
BulkLoadEx/Properties0% (0 lines)
DataCollectors0% (0 lines)
NexusInterfaces0% (0 lines)
NexusInterfaces/Properties0% (0 lines)
NexusReports_bak/Properties0% (0 lines)
PerfmonImporter/Properties0% (0 lines)
ReadTraceNexusImporter/Properties0% (0 lines)
ReadTraceNexusImporter0% (0 lines)
sqlnexus/ClickOnce0% (0 lines)
sqlnexus/Properties0% (0 lines)

Duplication Between Components (50+ lines)

G PerfmonImporter PerfmonImporter RowsetImportEngine RowsetImportEngine PerfmonImporter--RowsetImportEngine 84 DataCollectors/Diag2008 DataCollectors/Diag2008 DataCollectors/Diag2008R2 DataCollectors/Diag2008R2 DataCollectors/Diag2008--DataCollectors/Diag2008R2 72 DataCollectors/Diag2014 DataCollectors/Diag2014 DataCollectors/Diag2008--DataCollectors/Diag2014 60 DataCollectors/Diag2012 DataCollectors/Diag2012 DataCollectors/Diag2008--DataCollectors/Diag2012 60 DataCollectors/Diag2008R2--DataCollectors/Diag2012 60 DataCollectors/Diag2008R2--DataCollectors/Diag2014 60 DataCollectors/Diag2012--DataCollectors/Diag2014 69

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 356 duplicates...
Size#FoldersFilesLinesCode
295 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1885:2470 (16%)
1684:2269 (17%)
view
130 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
2926:3192 (7%)
2698:2964 (7%)
view
98 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1716:1880 (5%)
1516:1680 (5%)
view
90 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
37:160 (5%)
36:159 (5%)
view
82 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
658:774 (4%)
576:692 (4%)
view
67 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
2500:2632 (3%)
2294:2426 (4%)
view
66 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
2657:2788 (3%)
2451:2582 (3%)
view
57 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1596:1704 (3%)
1404:1511 (3%)
view
56 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
593:668 (7%)
522:597 (6%)
view
49 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
48:159 (6%)
43:154 (6%)
view
44 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
1258:1336 (5%)
1324:1402 (5%)
view
42 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1458:1526 (2%)
1281:1349 (2%)
view
37 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
177:291 (4%)
172:284 (4%)
view
34 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
243:304 (1%)
233:294 (2%)
view
33 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
926:981 (1%)
795:850 (1%)
view
31 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
987:1055 (1%)
855:922 (1%)
view
31 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
2825:2881 (1%)
2619:2675 (1%)
view
30 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1198:1252 (1%)
1026:1080 (1%)
view
25 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
427:471 (3%)
392:436 (3%)
view
25 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
3198:3251 (1%)
2968:3021 (1%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 26 unit duplicates...
Size#FoldersFilesLinesCode
35 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
708:745 
626:663 
view
21 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
677:698 
595:616 
view
21 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
780:802 
695:717 
view
18 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
46:69 
45:68 
view
18 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1611:1633 
1419:1441 
view
17 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
658:675 
576:593 
view
14 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
933:947 
802:816 
view
14 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1636:1650 
1444:1458 
view
13 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
273:286 
263:276 
view
12 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
69:82 
64:77 
view
12 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
353:365 
325:337 
view
12 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
613:625 
539:551 
view
10 x 2 sqlnexus
sqlnexus
fmParameters.cs
frmImportSummary.cs
247:257 
45:55 
view
9 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
987:996 
855:864 
view
8 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
263:271 
253:261 
view
7 x 2 RowsetImportEngine
RowsetImportEngine
TextRowsetImporter.cs
TextRowsetImporter2.cs
443:450 
408:415 
view
7 x 12 sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
sqlnexus
...
Spinner.Designer.cs
UserInstruction.Designer.cs
fmAbout.Designer.cs
fmConnect.Designer.cs
fmCustomRowset.Designer.cs
fmEula.Designer.cs
fmImport.Designer.cs
fmNexus.Designer.cs
fmPBReports.Designer.cs
fmPrompt.Designer.cs
...
14:21 
12:19 
14:21 
14:21 
14:21 
14:21 
14:21 
14:21 
14:21 
14:21 
...
view
7 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
747:754 
665:672 
view
7 x 2 sqlnexus
sqlnexus
fmNexus.cs
fmnexus.as.resource.cs
1101:1108 
950:957 
view
6 x 3 PerfmonImporter
RowsetImportEngine
RowsetImportEngine
BLGImporter.cs
TextRowsetImporter.cs
TextRowsetImporter2.cs
321:327 
1294:1300 
1360:1366 
view