opensearch-project / opensearch-go
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
  • 38% duplication:
    • 25,707 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 9,965 duplicated lines
  • 36,067 duplicates
system38% (9,965 lines)
Duplication per Extension
go38% (9,965 lines)
Duplication per Component (primary)
opensearchapi48% (9,090 lines)
internal/build/cmd16% (820 lines)
opensearchtransport3% (31 lines)
opensearchutil6% (24 lines)
ROOT0% (0 lines)
signer/aws0% (0 lines)
signer0% (0 lines)
internal/build/utils0% (0 lines)
internal/build0% (0 lines)
internal/version0% (0 lines)

Duplication Between Components (50+ lines)

G internal/build/cmd internal/build/cmd opensearchapi opensearchapi internal/build/cmd--opensearchapi 2138

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 36,067 duplicates...
Size#FoldersFilesLinesCode
64 x 2 opensearchapi
opensearchapi
api.exists.go
api.get.go
92:204 (40%)
92:204 (40%)
view
62 x 2 opensearchapi
opensearchapi
api.exists_source.go
api.get_source.go
91:197 (41%)
95:201 (40%)
view
53 x 2 opensearchapi
opensearchapi
api.mtermvectors.go
api.termvectors.go
122:218 (30%)
124:220 (30%)
view
49 x 2 opensearchapi
opensearchapi
api.cat.pending_tasks.go
api.cat.shards.go
92:180 (37%)
106:194 (33%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.master.go
api.cat.repositories.go
89:175 (38%)
89:175 (38%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.master.go
api.cat.nodeattrs.go
89:175 (38%)
89:175 (38%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.repositories.go
api.cat.templates.go
89:175 (38%)
98:184 (35%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.nodeattrs.go
api.cat.repositories.go
89:175 (38%)
89:175 (38%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.master.go
api.cat.templates.go
89:175 (38%)
98:184 (35%)
view
48 x 2 opensearchapi
opensearchapi
api.cat.nodeattrs.go
api.cat.templates.go
89:175 (38%)
98:184 (35%)
view
47 x 2 opensearchapi
opensearchapi
api.cat.allocation.go
api.cat.master.go
106:190 (33%)
91:175 (37%)
view
47 x 2 opensearchapi
opensearchapi
api.cat.allocation.go
api.cat.nodeattrs.go
106:190 (33%)
91:175 (37%)
view
47 x 2 opensearchapi
opensearchapi
api.cat.allocation.go
api.cat.repositories.go
106:190 (33%)
91:175 (37%)
view
47 x 2 opensearchapi
opensearchapi
api.cat.allocation.go
api.cat.templates.go
106:190 (33%)
100:184 (34%)
view
46 x 2 opensearchapi
opensearchapi
api.indices.close.go
api.indices.open.go
93:175 (37%)
93:175 (37%)
view
46 x 2 opensearchapi
opensearchapi
api.indices.shrink.go
api.indices.split.go
95:176 (38%)
95:176 (38%)
view
45 x 2 opensearchapi
opensearchapi
api.dangling_indices.delete_dangling_...
api.dangling_indices.import_dangling_...
84:160 (42%)
84:160 (42%)
view
45 x 2 opensearchapi
opensearchapi
api.explain.go
api.mget.go
143:223 (25%)
118:198 (30%)
view
45 x 2 opensearchapi
opensearchapi
api.create.go
api.index.go
121:201 (31%)
143:223 (26%)
view
44 x 2 opensearchapi
opensearchapi
api.indices.put_index_template.go
api.indices.simulate_index_template.go
90:167 (40%)
92:169 (38%)
view
Duplicated Units
The list of top 10 duplicated units.
See data for all 10 unit duplicates...
Size#FoldersFilesLinesCode
97 x 2 opensearchapi
opensearchapi
api.get.go
api.exists.go
83:205 
83:205 
view
78 x 2 opensearchapi
opensearchapi
api.indices.open.go
api.indices.close.go
78:176 
78:176 
view
78 x 3 opensearchapi
opensearchapi
opensearchapi
api.cat.master.go
api.cat.nodeattrs.go
api.cat.repositories.go
77:176 
77:176 
77:176 
view
77 x 2 opensearchapi
opensearchapi
api.indices.split.go
api.indices.shrink.go
81:177 
81:177 
view
71 x 2 opensearchapi
opensearchapi
api.indices.get_upgrade.go
api.indices.refresh.go
74:162 
74:162 
view
69 x 2 opensearchapi
opensearchapi
api.dangling_indices.import_dangling_...
api.dangling_indices.delete_dangling_...
75:161 
75:161 
view
68 x 2 opensearchapi
opensearchapi
api.snapshot.verify_repository.go
api.snapshot.cleanup_repository.go
73:157 
73:157 
view
66 x 3 opensearchapi
opensearchapi
opensearchapi
api.indices.delete_index_template.go
api.indices.delete_template.go
api.cluster.delete_component_template.go
73:155 
73:155 
73:155 
view
65 x 3 opensearchapi
opensearchapi
opensearchapi
api.reindex_rethrottle.go
api.delete_by_query_rethrottle.go
api.update_by_query_rethrottle.go
72:152 
72:152 
72:152 
view
57 x 7 opensearchapi
opensearchapi
opensearchapi
opensearchapi
opensearchapi
opensearchapi
opensearchapi
api.cluster.remote_info.go
api.ingest.processor_grok.go
api.dangling_indices.list_dangling_in...
api.get_script_context.go
api.ping.go
api.info.go
api.get_script_languages.go
67:138 
67:138 
67:138 
69:140 
67:138 
67:138 
69:140 
view