Source:
private GeneratorFactory(StressSettings settings) { List<ColumnInfo> unsupportedColumns = new ArrayList<>(); Set<ColumnMetadata> keyColumns = com.google.common.collect.Sets.newHashSet(tableMetaData.getPrimaryKey()); for (ColumnMetadata metadata : tableMetaData.getPartitionKey()) partitionKeys.add(new ColumnInfo(metadata.getName(), metadata.getType().getName().toString(), metadata.getType().isCollection() ? metadata.getType().getTypeArguments().get(0).getName().toString() : "", columnConfigs.get(metadata.getName()))); for (ColumnMetadata metadata : tableMetaData.getClusteringColumns()) clusteringColumns.add(new ColumnInfo(metadata.getName(), metadata.getType().getName().toString(), metadata.getType().isCollection() ? metadata.getType().getTypeArguments().get(0).getName().toString() : "", columnConfigs.get(metadata.getName()))); for (ColumnMetadata metadata : tableMetaData.getColumns()) { if (keyColumns.contains(metadata)) continue; if (!isTypeSupported(metadata.getType())) { unsupportedColumns.add(new ColumnInfo(metadata.getName(), metadata.getType().getName().toString(), metadata.getType().isCollection() ? metadata.getType().getTypeArguments().get(0).getName().toString() : "", columnConfigs.get(metadata.getName()))); continue; } valueColumns.add(new ColumnInfo(metadata.getName(), metadata.getType().getName().toString(), metadata.getType().isCollection() ? metadata.getType().getTypeArguments().get(0).getName().toString() : "", columnConfigs.get(metadata.getName()))); } if (unsupportedColumns.size() > 0){ if (settings.errors.skipUnsupportedColumns) { for (ColumnInfo column : unsupportedColumns) { System.err.printf("WARNING: Table '%s' has column '%s' of unsupported type\n", tableName, column.name); } } else { for (ColumnInfo column : unsupportedColumns) { System.err.printf("ERROR: Table '%s' has column '%s' of unsupported type\n", tableName, column.name); } throw new UnsupportedOperationException(); } } }

Target:
private GeneratorFactory(StressSettings settings) { List<ColumnInfo> unsupportedColumns = new ArrayList<>(); List<ColumnInfo> unsupportedCriticalColumns = new ArrayList<>(); Set<ColumnMetadata> keyColumns = com.google.common.collect.Sets.newHashSet(tableMetaData.getPrimaryKey()); for (ColumnMetadata metadata : tableMetaData.getPartitionKey()) pushColumnInfo(metadata, partitionKeys, true, unsupportedColumns, unsupportedCriticalColumns); for (ColumnMetadata metadata : tableMetaData.getClusteringColumns()) pushColumnInfo(metadata, clusteringColumns, true, unsupportedColumns, unsupportedCriticalColumns); for (ColumnMetadata metadata : tableMetaData.getColumns()) { if (!keyColumns.contains(metadata)) pushColumnInfo(metadata, valueColumns, !(settings.errors.skipUnsupportedColumns), unsupportedColumns, unsupportedCriticalColumns); } if (unsupportedColumns.size() > 0) { for (ColumnInfo column : unsupportedColumns) { System.err.printf("WARNING: Table '%s' has column '%s' of unsupported type\n", tableName, column.name); } } if (unsupportedCriticalColumns.size() > 0) { for (ColumnInfo column : unsupportedCriticalColumns) { System.err.printf("ERROR: Table '%s' has column '%s' of unsupported type\n", tableName, column.name); } assert false: "Can't continue due to the errors"; } }