awslabs / streaming-endpoint-for-apache-hbase
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
  • 15% duplication:
    • 1,499 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 239 duplicated lines
  • 8 duplicates
system15% (239 lines)
Duplication per Extension
java15% (239 lines)
Duplication per Component (primary)
lambda-kafka-function/src/main/java/com/amazonaws/hbase/lambda76% (96 lines)
lambda-kinesis-function/src/main/java/com/amazonaws/hbase/lambda76% (96 lines)
firehose-sink/src/main/java/com/amazonaws/hbase/datasink7% (13 lines)
kinesis-sink/src/main/java/com/amazonaws/hbase/datasink5% (13 lines)
kafka-sink/src/main/java/com/amazonaws/hbase/datasink4% (9 lines)
lambda-kafka-function/src/main/java/com/amazonaws/hbase/lambda/exceptions100% (6 lines)
lambda-kinesis-function/src/main/java/com/amazonaws/hbase/lambda/exceptions100% (6 lines)
hbase-endpoint/src/main/java/com/amazonaws/hbase/serde0% (0 lines)
hbase-endpoint/src/main/java/com/amazonaws/hbase0% (0 lines)
hbase-endpoint/src/main/java/com/amazonaws/hbase/model0% (0 lines)

Duplication Between Components (50+ lines)

G lambda-kafka-function/src/main/java/com/amazonaws/hbase/lambda lambda-kafka-function/src/main/java/com/amazonaws/hbase/lambda lambda-kinesis-function/src/main/java/com/amazonaws/hbase/lambda lambda-kinesis-function/src/main/java/com/amazonaws/hbase/lambda lambda-kafka-function/src/main/java/com/amazonaws/hbase/lambda--lambda-kinesis-function/src/main/java/com/amazonaws/hbase/lambda 192

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 8 longest duplicates.
See data for all 8 duplicates...
Size#FoldersFilesLinesCode
42 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
KafkaHandler.java
KinesisHandler.java
100:172 (50%)
97:168 (50%)
view
42 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
RecordValidator.java
RecordValidator.java
16:77 (100%)
16:77 (100%)
view
13 x 2 firehose-sink/src/main/j...mazonaws/hbase/datasink
kinesis-sink/src/main/ja...mazonaws/hbase/datasink
FirehoseDataSinkImpl.java
KinesisDataSinkImpl.java
242:264 (10%)
220:242 (12%)
view
9 x 2 firehose-sink/src/main/j...mazonaws/hbase/datasink
kafka-sink/src/main/java...mazonaws/hbase/datasink
FirehoseDataSinkImpl.java
KafkaDataSinkImpl.java
250:264 (7%)
112:131 (13%)
view
9 x 2 kafka-sink/src/main/java...mazonaws/hbase/datasink
kinesis-sink/src/main/ja...mazonaws/hbase/datasink
KafkaDataSinkImpl.java
KinesisDataSinkImpl.java
112:131 (13%)
228:242 (8%)
view
6 x 2 lambda-kafka-function/sr...hbase/lambda/exceptions
lambda-kinesis-function/...hbase/lambda/exceptions
InvalidInAppRecordException.java
InvalidInAppRecordException.java
6:16 (100%)
6:16 (100%)
view
6 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
KafkaHandler.java
KinesisHandler.java
62:67 (7%)
62:67 (7%)
view
6 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
KafkaHandler.java
KinesisHandler.java
45:50 (7%)
43:48 (7%)
view
Duplicated Units
The list of top 5 duplicated units.
See data for all 5 unit duplicates...
Size#FoldersFilesLinesCode
22 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
RecordValidator.java
RecordValidator.java
38:66 
38:66 
view
16 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
RecordValidator.java
RecordValidator.java
18:36 
18:36 
view
11 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
KafkaHandler.java
KinesisHandler.java
159:173 
156:169 
view
10 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
KafkaHandler.java
KinesisHandler.java
147:157 
144:154 
view
10 x 2 lambda-kafka-function/sr.../amazonaws/hbase/lambda
lambda-kinesis-function/.../amazonaws/hbase/lambda
RecordValidator.java
RecordValidator.java
68:78 
68:78 
view