diff --git a/symmetric/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/TransformWriter.java b/symmetric/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/TransformWriter.java index a09d6e98a1..d04608dbbe 100644 --- a/symmetric/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/TransformWriter.java +++ b/symmetric/symmetric-io/src/main/java/org/jumpmind/symmetric/io/data/writer/TransformWriter.java @@ -158,17 +158,20 @@ public void write(CsvData data) { } List dataThatHasBeenTransformed = new ArrayList(); - for (TransformTable transformation : activeTransforms) { - transformation = transformation.enhanceWithImpliedColumns(sourceKeyValues, oldSourceValues, sourceValues); + for (TransformTable transformation : activeTransforms) { + transformation = transformation.enhanceWithImpliedColumns(sourceKeyValues, + oldSourceValues, sourceValues); dataThatHasBeenTransformed.addAll(transform(eventType, context, transformation, sourceKeyValues, oldSourceValues, sourceValues)); } for (TransformedData transformedData : dataThatHasBeenTransformed) { Table table = transformedData.buildTargetTable(); - this.targetWriter.start(table); - this.targetWriter.write(transformedData.buildTargetCsvData()); - this.targetWriter.end(table); + CsvData csvData = transformedData.buildTargetCsvData(); + if (this.targetWriter.start(table) || !csvData.requiresTable()) { + this.targetWriter.write(csvData); + this.targetWriter.end(table); + } } } else {