String barcode = name + "::" + dilution.getLibrary().getAlias();
params.addValue("name", name);
params.addValue("identificationBarcode", barcode);
Number newId = insert.executeAndReturnKey(params);
if (newId.longValue() != dilution.getId()) {
log.error("Expected LibraryDilution ID doesn't match returned value from database insert: rolling back...");
new NamedParameterJdbcTemplate(template).update(LIBRARY_DILUTION_DELETE, new MapSqlParameterSource().addValue("dilutionId", newId.longValue()));
throw new IOException("Something bad happened. Expected LibraryDilution ID doesn't match returned value from DB insert");
}