opensearch-project / performance-analyzer-rca
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
  • 11% duplication:
    • 27,656 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 3,068 duplicated lines
  • 523 duplicates
system11% (3,068 lines)
Duplication per Extension
java11% (3,068 lines)
Duplication per Component (primary)
src/main/java/org/opensearch/performanceanalyzer/reader26% (1,371 lines)
src/main/java/org/opensearch/performanceanalyzer/rca7% (861 lines)
src/main/java/org/opensearch/performanceanalyzer/decisionmaker15% (409 lines)
src/main/java/org/opensearch/performanceanalyzer/rest27% (202 lines)
src/main/java/org/opensearch/performanceanalyzer/os19% (109 lines)
src/main/java/org/opensearch/performanceanalyzer/metrics5% (66 lines)
src/main/java/org/opensearch/performanceanalyzer/core46% (28 lines)
src/main/java/org/opensearch/performanceanalyzer2% (16 lines)
src/main/java/org/opensearch/performanceanalyzer/hwnet1% (6 lines)
src/main/java/org/opensearch/performanceanalyzer/reader_writer_shared0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/threads0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/config0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/plugins0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/model0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/util0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/metrics_generator0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/jvm0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/collections0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/metricsdb0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/collectors0% (0 lines)
src/main/java/org/opensearch/performanceanalyzer/net0% (0 lines)
src/main/proto0% (0 lines)
src/main/resources0% (0 lines)
configs/xsl0% (0 lines)
pa_config0% (0 lines)
docker0% (0 lines)
Longest Duplicates
The list of 20 longest duplicates.
See data for all 523 duplicates...
Size#FoldersFilesLinesCode
38 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
86:124 (8%)
150:188 (8%)
view
34 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MetricProperties.java
NodeMetricsEventProcessor.java
234:270 (15%)
158:194 (25%)
view
34 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
87:120 (7%)
403:436 (7%)
view
34 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
151:184 (7%)
403:436 (7%)
view
30 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
235:266 (6%)
400:430 (6%)
view
28 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
87:114 (6%)
238:266 (6%)
view
28 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterEventMetricsSnapshot.java
MasterEventMetricsSnapshot.java
151:178 (6%)
238:266 (6%)
view
27 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MetricsEmitter.java
MetricsEmitter.java
127:156 (2%)
194:223 (2%)
view
25 x 2 src/main/java/org/opense...erformanceanalyzer/rest
src/main/java/org/opense...erformanceanalyzer/rest
QueryActionRequestHandler.java
QueryRcaRequestHandler.java
107:133 (29%)
125:151 (17%)
view
25 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MetricsEmitter.java
MetricsEmitter.java
166:191 (2%)
196:221 (2%)
view
25 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MetricsEmitter.java
MetricsEmitter.java
129:154 (2%)
166:191 (2%)
view
22 x 2 src/main/java/org/opense...er/deciders/jvm/old_gen
src/main/java/org/opense...er/deciders/jvm/old_gen
LevelOneActionBuilder.java
LevelTwoActionBuilder.java
84:110 (40%)
102:128 (14%)
view
21 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
FaultDetectionMetricsSnapshot.java
ShardRequestMetricsSnapshot.java
300:321 (7%)
232:252 (6%)
view
20 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
FaultDetectionMetricsSnapshot.java
HttpRequestMetricsSnapshot.java
300:319 (7%)
330:349 (7%)
view
20 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
HttpRequestMetricsSnapshot.java
ShardRequestMetricsSnapshot.java
330:349 (7%)
232:251 (6%)
view
19 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
FaultDetectionMetricsSnapshot.java
FaultDetectionMetricsSnapshot.java
165:184 (7%)
203:222 (7%)
view
18 x 2 src/main/java/org/opense...eanalyzer/rca/store/rca
src/main/java/org/opense...r/rca/store/rca/hotheap
OldGenRca.java
HighHeapUsageYoungGenRca.java
214:243 (11%)
308:337 (6%)
view
18 x 2 src/main/java/org/opense.../performanceanalyzer/os
src/main/java/org/opense.../performanceanalyzer/os
ThreadCPU.java
ThreadSched.java
152:175 (10%)
87:109 (19%)
view
17 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
FaultDetectionMetricsSnapshot.java
FaultDetectionMetricsSnapshot.java
207:224 (6%)
346:363 (6%)
view
17 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
FaultDetectionMetricsSnapshot.java
FaultDetectionMetricsSnapshot.java
87:103 (6%)
168:184 (6%)
view
Duplicated Units
The list of top 9 duplicated units.
See data for all 9 unit duplicates...
Size#FoldersFilesLinesCode
24 x 2 src/main/java/org/opense...eanalyzer/rca/store/rca
src/main/java/org/opense...r/rca/store/rca/hotheap
OldGenRca.java
HighHeapUsageYoungGenRca.java
213:244 
307:338 
view
12 x 2 src/main/java/org/opense...er/deciders/jvm/old_gen
src/main/java/org/opense...er/deciders/jvm/old_gen
LevelTwoActionBuilder.java
LevelOneActionBuilder.java
102:115 
84:97 
view
12 x 2 src/main/java/org/opense...er/deciders/jvm/old_gen
src/main/java/org/opense...er/deciders/jvm/old_gen
LevelTwoActionBuilder.java
LevelOneActionBuilder.java
117:130 
99:112 
view
9 x 2 src/main/java/org/opense...a/admissioncontrol/heap
src/main/java/org/opense...a/admissioncontrol/heap
AdmissionControlByLargeHeap.java
AdmissionControlBySmallHeap.java
49:58 
49:58 
view
9 x 3 src/main/java/org/opense...ca/store/rca/threadpool
src/main/java/org/opense.../rca/store/rca/hotshard
src/main/java/org/opense...eanalyzer/rca/store/rca
QueueRejectionRca.java
HotShardRca.java
HotNodeRca.java
134:143 
257:266 
115:124 
view
9 x 3 src/main/java/org/opense...erformanceanalyzer/rest
src/main/java/org/opense...erformanceanalyzer/rest
src/main/java/org/opense...erformanceanalyzer/rest
QueryBatchRequestHandler.java
QueryMetricsRequestHandler.java
QueryRcaRequestHandler.java
359:368 
330:339 
263:272 
view
7 x 2 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
MasterThrottlingMetricsEventProcessor...
ShardStateMetricsProcessor.java
128:135 
116:123 
view
6 x 7 src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
src/main/java/org/opense...formanceanalyzer/reader
ShardRequestMetricsSnapshot.java
FaultDetectionMetricsSnapshot.java
ShardStateMetricsSnapshot.java
MasterThrottlingMetricsSnapshot.java
MasterEventMetricsSnapshot.java
AdmissionControlSnapshot.java
HttpRequestMetricsSnapshot.java
136:142 
112:119 
92:98 
100:106 
217:224 
68:74 
142:148 
view
6 x 2 src/main/java/org/opense...a/temperature/dimension
src/main/java/org/opense...a/temperature/dimension
ShardSizeDimensionTemperatureRca.java
HeapAllocRateTemperatureRca.java
75:81 
75:81 
view