diff options
author | jingtinghuang <r06944049@ntu.edu.tw> | 2020-04-06 16:09:05 +0800 |
---|---|---|
committer | jingtinghuang <r06944049@ntu.edu.tw> | 2020-04-06 16:09:05 +0800 |
commit | d220ba5608c848831d4304bbc229993020dd0063 (patch) | |
tree | 4078d1abddd503bb2c440381ef4161af03c8245e /vespa-hadoop/src/main | |
parent | dd48066e6957a34e6a85bc425f759d1650b9a2b5 (diff) |
add print id when error
Diffstat (limited to 'vespa-hadoop/src/main')
-rw-r--r-- | vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/pig/VespaDocumentOperation.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/pig/VespaDocumentOperation.java b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/pig/VespaDocumentOperation.java index 94176bbb658..f433ec9a35e 100644 --- a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/pig/VespaDocumentOperation.java +++ b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/pig/VespaDocumentOperation.java @@ -67,6 +67,7 @@ public class VespaDocumentOperation extends EvalFunc<String> { private static final String PROPERTY_CREATE_IF_NON_EXISTENT = "create-if-non-existent"; private static final String PROPERTY_ID_TEMPLATE = "docid"; private static final String PROPERTY_OPERATION = "operation"; + private static final String PROPERTY_PRINT_DOCID_WHEN_ERROR = "print-docid-when-error"; private static final String BAG_AS_MAP_FIELDS = "bag-as-map-fields"; private static final String SIMPLE_ARRAY_FIELDS = "simple-array-fields"; private static final String SIMPLE_OBJECT_FIELDS = "simple-object-fields"; @@ -80,6 +81,7 @@ public class VespaDocumentOperation extends EvalFunc<String> { private static final String PARTIAL_UPDATE_ASSIGN = "assign"; private static final String PARTIAL_UPDATE_ADD = "add"; private static final String PARTIAL_UPDATE_REMOVE = "remove"; + private static boolean printIdOnError; private static Map<String, String> mapPartialOperationMap; @@ -113,6 +115,7 @@ public class VespaDocumentOperation extends EvalFunc<String> { properties = VespaConfiguration.loadProperties(params); template = properties.getProperty(PROPERTY_ID_TEMPLATE); operation = Operation.fromString(properties.getProperty(PROPERTY_OPERATION, "put")); + printIdOnError = Boolean.parseBoolean(properties.getProperty(PROPERTY_PRINT_DOCID_WHEN_ERROR, "false")); } @Override @@ -157,6 +160,12 @@ public class VespaDocumentOperation extends EvalFunc<String> { if (statusReporter != null) { statusReporter.incrCounter("Vespa Document Operation Counters", "Document operation failed", 1); } + if (printIdOnError) { + Schema inputSchema = getInputSchema(); + Map<String, Object> fields = TupleTools.tupleMap(inputSchema, tuple); + String docId = TupleTools.toString(fields, template); + System.out.println("Error occur when processing document with docID: " +docId); + } StringBuilder sb = new StringBuilder(); sb.append("Caught exception processing input row: \n"); sb.append(tuple.toString()); |