This is an automated email from the ASF dual-hosted git repository.
mattyb149 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/main by this push:
new 415505ea5d NIFI-12587 - improve error message in ValidateCSV
415505ea5d is described below
commit 415505ea5df7b2434829c29ed012731a65d07861
Author: Pierre Villard <[email protected]>
AuthorDate: Tue Jan 9 11:32:48 2024 +0400
NIFI-12587 - improve error message in ValidateCSV
review - removed row source from logging
Update
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
Co-authored-by: dan-s1 <[email protected]>
Update
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
Co-authored-by: dan-s1 <[email protected]>
Update
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
Co-authored-by: dan-s1 <[email protected]>
Update
nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
Signed-off-by: Matt Burgess <[email protected]>
This closes #8224
Co-authored-by: dan-s1 <[email protected]>
---
.../main/java/org/apache/nifi/processors/standard/ValidateCsv.java | 7 +++++--
.../java/org/apache/nifi/processors/standard/TestValidateCsv.java | 4 ++--
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
index a9d48555bb..8904fff026 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/ValidateCsv.java
@@ -514,8 +514,11 @@ public class ValidateCsv extends AbstractProcessor {
} catch (final SuperCsvException e) {
valid.set(false);
+ final String coordinates =
String.format("{line=%d, row=%d, column=%d}", e.getCsvContext().getLineNumber(),
+ e.getCsvContext().getRowNumber(),
e.getCsvContext().getColumnNumber());
+ final String errorMessage =
e.getLocalizedMessage() + " at " + coordinates;
if(isWholeFFValidation) {
- validationError.set(e.getLocalizedMessage());
+ validationError.set(errorMessage);
logger.debug("Failed to validate {} against
schema due to {}; routing to 'invalid'", flowFile, e);
break;
} else {
@@ -532,7 +535,7 @@ public class ValidateCsv extends AbstractProcessor {
}
if(validationError.get() == null) {
-
validationError.set(e.getLocalizedMessage());
+ validationError.set(errorMessage);
}
}
} finally {
diff --git
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
index 3e45d56b9c..8608e15aa3 100644
---
a/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
+++
b/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/test/java/org/apache/nifi/processors/standard/TestValidateCsv.java
@@ -122,7 +122,7 @@ public class TestValidateCsv {
runner.run();
runner.assertTransferCount(ValidateCsv.REL_INVALID, 1);
runner.getFlowFilesForRelationship(ValidateCsv.REL_INVALID).get(0).assertAttributeEquals("validation.error.message",
- "'22/111954' could not be parsed as a Date");
+ "'22/111954' could not be parsed as a Date at {line=1, row=1,
column=2}");
}
@Test
@@ -200,7 +200,7 @@ public class TestValidateCsv {
runner.run();
runner.assertTransferCount(ValidateCsv.REL_INVALID, 1);
runner.getFlowFilesForRelationship(ValidateCsv.REL_INVALID).get(0).assertAttributeEquals("validation.error.message",
- "'testapache.org' does not match the regular expression
'[a-z0-9\\._]+@[a-z0-9\\.]+'");
+ "'testapache.org' does not match the regular expression
'[a-z0-9\\._]+@[a-z0-9\\.]+' at {line=1, row=1, column=3}");
}
@Test