private void checkForInvalidNullDuplicates()

in c3r-sdk-core/src/main/java/com/amazonaws/c3r/action/RowMarshaller.java [210:223]


    private void checkForInvalidNullDuplicates(final ColumnInsight insight, final Value value) {
        // Manually check for disallowed NULL duplicates because SQLite and many other
        // database engines consider NULLs distinct in a UNIQUE column.
        if (!settings.isAllowDuplicates()
                && !settings.isPreserveNulls()
                && insight.getType() == ColumnType.FINGERPRINT
                && value.isNull()
                && insight.hasSeenNull()) {
            throw new C3rRuntimeException("Source column " + (insight.getSourceColumnPosition() + 1)
                    + " cannot be used to construct the target fingerprint column `" + insight.getTargetHeader().toString() + "` because"
                    + " the column contains more than one NULL entry"
                    + " and the `allowDuplicates` setting is false.");
        }
    }