{
  "title" : "Duplication",
  "timestamp" : "2024-04-03 14:35:24",
  "duplicates" : [ {
    "blockSize" : 19,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "config/development.yaml",
        "extension" : "yaml",
        "linesOfCode" : 28,
        "components" : [ "primary::config" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 28,
      "startLine" : 1,
      "endLine" : 22,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 19
    }, {
      "file" : {
        "relativePath" : "config/test.yaml",
        "extension" : "yaml",
        "linesOfCode" : 28,
        "components" : [ "primary::config" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 28,
      "startLine" : 1,
      "endLine" : 22,
      "cleanedStartLine" : 1,
      "cleanedEndLine" : 19
    } ]
  }, {
    "blockSize" : 13,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "state/manager.go",
        "extension" : "go",
        "linesOfCode" : 436,
        "components" : [ "primary::state" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 353,
      "startLine" : 180,
      "endLine" : 196,
      "cleanedStartLine" : 76,
      "cleanedEndLine" : 88
    }, {
      "file" : {
        "relativePath" : "state/manager.go",
        "extension" : "go",
        "linesOfCode" : 436,
        "components" : [ "primary::state" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 353,
      "startLine" : 293,
      "endLine" : 309,
      "cleanedStartLine" : 168,
      "cleanedEndLine" : 180
    } ]
  }, {
    "blockSize" : 10,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "changelog/mysql.go",
        "extension" : "go",
        "linesOfCode" : 832,
        "components" : [ "primary::changelog" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 625,
      "startLine" : 600,
      "endLine" : 619,
      "cleanedStartLine" : 335,
      "cleanedEndLine" : 344
    }, {
      "file" : {
        "relativePath" : "changelog/mysql.go",
        "extension" : "go",
        "linesOfCode" : 832,
        "components" : [ "primary::changelog" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 625,
      "startLine" : 660,
      "endLine" : 679,
      "cleanedStartLine" : 377,
      "cleanedEndLine" : 386
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 77,
      "endLine" : 85,
      "cleanedStartLine" : 46,
      "cleanedEndLine" : 54
    }, {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 119,
      "endLine" : 127,
      "cleanedStartLine" : 87,
      "cleanedEndLine" : 95
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 77,
      "endLine" : 85,
      "cleanedStartLine" : 46,
      "cleanedEndLine" : 54
    }, {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 160,
      "endLine" : 168,
      "cleanedStartLine" : 127,
      "cleanedEndLine" : 135
    } ]
  }, {
    "blockSize" : 9,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 119,
      "endLine" : 127,
      "cleanedStartLine" : 87,
      "cleanedEndLine" : 95
    }, {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 160,
      "endLine" : 168,
      "cleanedStartLine" : 127,
      "cleanedEndLine" : 135
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "state/lock.go",
        "extension" : "go",
        "linesOfCode" : 130,
        "components" : [ "primary::state" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 90,
      "startLine" : 102,
      "endLine" : 112,
      "cleanedStartLine" : 47,
      "cleanedEndLine" : 54
    }, {
      "file" : {
        "relativePath" : "state/lock.go",
        "extension" : "go",
        "linesOfCode" : 130,
        "components" : [ "primary::state" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 90,
      "startLine" : 158,
      "endLine" : 168,
      "cleanedStartLine" : 83,
      "cleanedEndLine" : 90
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "config/development.yaml",
        "extension" : "yaml",
        "linesOfCode" : 28,
        "components" : [ "primary::config" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 28,
      "startLine" : 24,
      "endLine" : 32,
      "cleanedStartLine" : 21,
      "cleanedEndLine" : 28
    }, {
      "file" : {
        "relativePath" : "config/test.yaml",
        "extension" : "yaml",
        "linesOfCode" : 28,
        "components" : [ "primary::config" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 28,
      "startLine" : 24,
      "endLine" : 32,
      "cleanedStartLine" : 21,
      "cleanedEndLine" : 28
    } ]
  }, {
    "blockSize" : 8,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "db/resolver.go",
        "extension" : "go",
        "linesOfCode" : 67,
        "components" : [ "primary::db" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 50,
      "startLine" : 69,
      "endLine" : 76,
      "cleanedStartLine" : 21,
      "cleanedEndLine" : 28
    }, {
      "file" : {
        "relativePath" : "types/types.go",
        "extension" : "go",
        "linesOfCode" : 18,
        "components" : [ "primary::types" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 14,
      "startLine" : 35,
      "endLine" : 42,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 14
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/cluster_handler.go",
        "extension" : "go",
        "linesOfCode" : 154,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 113,
      "startLine" : 102,
      "endLine" : 113,
      "cleanedStartLine" : 45,
      "cleanedEndLine" : 50
    }, {
      "file" : {
        "relativePath" : "server/schema_handler.go",
        "extension" : "go",
        "linesOfCode" : 223,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 166,
      "startLine" : 192,
      "endLine" : 203,
      "cleanedStartLine" : 101,
      "cleanedEndLine" : 106
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/cluster_handler.go",
        "extension" : "go",
        "linesOfCode" : 154,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 113,
      "startLine" : 102,
      "endLine" : 113,
      "cleanedStartLine" : 45,
      "cleanedEndLine" : 50
    }, {
      "file" : {
        "relativePath" : "server/table_handler.go",
        "extension" : "go",
        "linesOfCode" : 230,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 173,
      "startLine" : 181,
      "endLine" : 192,
      "cleanedStartLine" : 103,
      "cleanedEndLine" : 108
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "state/state.go",
        "extension" : "go",
        "linesOfCode" : 655,
        "components" : [ "primary::state" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 479,
      "startLine" : 147,
      "endLine" : 155,
      "cleanedStartLine" : 72,
      "cleanedEndLine" : 77
    }, {
      "file" : {
        "relativePath" : "state/state.go",
        "extension" : "go",
        "linesOfCode" : 655,
        "components" : [ "primary::state" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 479,
      "startLine" : 183,
      "endLine" : 191,
      "cleanedStartLine" : 98,
      "cleanedEndLine" : 103
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 595,
      "endLine" : 600,
      "cleanedStartLine" : 528,
      "cleanedEndLine" : 533
    }, {
      "file" : {
        "relativePath" : "server/index.go",
        "extension" : "go",
        "linesOfCode" : 639,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 620,
      "startLine" : 680,
      "endLine" : 685,
      "cleanedStartLine" : 599,
      "cleanedEndLine" : 604
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "encoder/avro.go",
        "extension" : "go",
        "linesOfCode" : 372,
        "components" : [ "primary::encoder" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 274,
      "startLine" : 43,
      "endLine" : 48,
      "cleanedStartLine" : 5,
      "cleanedEndLine" : 10
    }, {
      "file" : {
        "relativePath" : "encoder/json.go",
        "extension" : "go",
        "linesOfCode" : 319,
        "components" : [ "primary::encoder" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 233,
      "startLine" : 42,
      "endLine" : 47,
      "cleanedStartLine" : 4,
      "cleanedEndLine" : 9
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "pipe/file.go",
        "extension" : "go",
        "linesOfCode" : 936,
        "components" : [ "primary::pipe" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 672,
      "startLine" : 1166,
      "endLine" : 1173,
      "cleanedStartLine" : 656,
      "cleanedEndLine" : 661
    }, {
      "file" : {
        "relativePath" : "pipe/hdfs.go",
        "extension" : "go",
        "linesOfCode" : 123,
        "components" : [ "primary::pipe" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 81,
      "startLine" : 47,
      "endLine" : 56,
      "cleanedStartLine" : 7,
      "cleanedEndLine" : 12
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "pipe/sql.go",
        "extension" : "go",
        "linesOfCode" : 301,
        "components" : [ "primary::pipe" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 215,
      "startLine" : 153,
      "endLine" : 158,
      "cleanedStartLine" : 72,
      "cleanedEndLine" : 77
    }, {
      "file" : {
        "relativePath" : "pipe/sql.go",
        "extension" : "go",
        "linesOfCode" : 301,
        "components" : [ "primary::pipe" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 215,
      "startLine" : 184,
      "endLine" : 189,
      "cleanedStartLine" : 89,
      "cleanedEndLine" : 94
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/schema_handler.go",
        "extension" : "go",
        "linesOfCode" : 223,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 166,
      "startLine" : 192,
      "endLine" : 203,
      "cleanedStartLine" : 101,
      "cleanedEndLine" : 106
    }, {
      "file" : {
        "relativePath" : "server/table_handler.go",
        "extension" : "go",
        "linesOfCode" : 230,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 173,
      "startLine" : 181,
      "endLine" : 192,
      "cleanedStartLine" : 103,
      "cleanedEndLine" : 108
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/cluster_handler.go",
        "extension" : "go",
        "linesOfCode" : 154,
        "components" : [ "primary::server" ],
        "concerns" : [ "::Unclassified" ]
      },
      "sourceFileCleanedLinesOfCode" : 113,
      "startLine" : 85,
      "endLine" : 93,
      "cleanedStartLine" : 33,
      "cleanedEndLine" : 38
    }, {
      "file" : {
        "relativePath" : "server/schema_handler.go",
        "extension" : "go",
        "linesOfCode" : 223,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 166,
      "startLine" : 175,
      "endLine" : 183,
      "cleanedStartLine" : 89,
      "cleanedEndLine" : 94
    } ]
  }, {
    "blockSize" : 6,
    "duplicatedFileBlocks" : [ {
      "file" : {
        "relativePath" : "server/schema_handler.go",
        "extension" : "go",
        "linesOfCode" : 223,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 166,
      "startLine" : 230,
      "endLine" : 236,
      "cleanedStartLine" : 130,
      "cleanedEndLine" : 135
    }, {
      "file" : {
        "relativePath" : "server/table_handler.go",
        "extension" : "go",
        "linesOfCode" : 230,
        "components" : [ "primary::server" ],
        "concerns" : [ "::TODOs" ]
      },
      "sourceFileCleanedLinesOfCode" : 173,
      "startLine" : 229,
      "endLine" : 235,
      "cleanedStartLine" : 140,
      "cleanedEndLine" : 145
    } ]
  } ],
  "overallDuplication" : null
}