diff options
author | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-01-24 14:58:33 +0100 |
---|---|---|
committer | Bjørn Christian Seime <bjorncs@verizonmedia.com> | 2022-01-24 14:58:33 +0100 |
commit | b873f03349b85dec1bba04ed8af35da3902f3fbb (patch) | |
tree | 662bd26ab79da015ec776507fc97ac47d8f0496b /vespa-hadoop/src | |
parent | 8e918835acb36f033ce6c9a087b1337ccf5227f1 (diff) |
Use vespa-feed-client by default
Diffstat (limited to 'vespa-hadoop/src')
-rw-r--r-- | vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaOutputFormat.java | 25 | ||||
-rw-r--r-- | vespa-hadoop/src/test/resources/visit_data.json | 22 |
2 files changed, 30 insertions, 17 deletions
diff --git a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaOutputFormat.java b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaOutputFormat.java index 00ce396fd09..66ab94574d9 100644 --- a/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaOutputFormat.java +++ b/vespa-hadoop/src/main/java/com/yahoo/vespa/hadoop/mapreduce/VespaOutputFormat.java @@ -3,10 +3,18 @@ package com.yahoo.vespa.hadoop.mapreduce; import com.yahoo.vespa.hadoop.mapreduce.util.VespaConfiguration; import com.yahoo.vespa.hadoop.mapreduce.util.VespaCounters; -import org.apache.hadoop.mapreduce.*; +import org.apache.hadoop.mapreduce.JobContext; +import org.apache.hadoop.mapreduce.OutputCommitter; +import org.apache.hadoop.mapreduce.OutputFormat; +import org.apache.hadoop.mapreduce.RecordWriter; +import org.apache.hadoop.mapreduce.TaskAttemptContext; import java.io.IOException; +import java.util.Objects; import java.util.Properties; +import java.util.logging.Logger; + +import static com.yahoo.vespa.http.client.config.FeedParams.DataFormat.XML_UTF8; /** * An output specification for writing to Vespa instances in a Map-Reduce job. @@ -18,6 +26,8 @@ import java.util.Properties; @SuppressWarnings("rawtypes") public class VespaOutputFormat extends OutputFormat { + private static final Logger log = Logger.getLogger(VespaOutputFormat.class.getName()); + final Properties configOverride; public VespaOutputFormat() { @@ -33,12 +43,17 @@ public class VespaOutputFormat extends OutputFormat { @Override @SuppressWarnings("deprecation") - public RecordWriter getRecordWriter(TaskAttemptContext context) throws IOException, InterruptedException { + public RecordWriter getRecordWriter(TaskAttemptContext context) throws IOException { VespaCounters counters = VespaCounters.get(context); VespaConfiguration configuration = VespaConfiguration.get(context.getConfiguration(), configOverride); - return configuration.useLegacyClient().orElse(true) - ? new LegacyVespaRecordWriter(configuration, counters) - : new VespaRecordWriter(configuration, counters); + Boolean useLegacyClient = configuration.useLegacyClient().orElse(null); + if (Objects.equals(useLegacyClient, Boolean.TRUE) || configuration.dataFormat() == XML_UTF8) { + log.warning("Feeding with legacy client or XML will no longer be supported on Vespa 8. " + + "See https://docs.vespa.ai/en/vespa8-release-notes.html"); + return new LegacyVespaRecordWriter(configuration, counters); + } else { + return new VespaRecordWriter(configuration, counters); + } } diff --git a/vespa-hadoop/src/test/resources/visit_data.json b/vespa-hadoop/src/test/resources/visit_data.json index a48fc9cf1c0..947b9326cc8 100644 --- a/vespa-hadoop/src/test/resources/visit_data.json +++ b/vespa-hadoop/src/test/resources/visit_data.json @@ -1,12 +1,10 @@ -[ -{"id":"id:testapp:metric::clicks-2015110414","fields":{"date":"2015110414","name":"clicks","value":1,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110415","fields":{"date":"2015110415","name":"clicks","value":2,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110416","fields":{"date":"2015110416","name":"clicks","value":4,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110417","fields":{"date":"2015110417","name":"clicks","value":3,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110418","fields":{"date":"2015110418","name":"clicks","value":6,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110419","fields":{"date":"2015110419","name":"clicks","value":3,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110420","fields":{"date":"2015110420","name":"clicks","value":4,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110421","fields":{"date":"2015110421","name":"clicks","value":2,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110422","fields":{"date":"2015110422","name":"clicks","value":7,"application":"testapp"}}, -{"id":"id:testapp:metric::clicks-2015110423","fields":{"date":"2015110423","name":"clicks","value":1,"application":"testapp"}} -] +{"id":"id:testapp:metric::clicks-2015110414","fields":{"date":"2015110414","name":"clicks","value":1,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110415","fields":{"date":"2015110415","name":"clicks","value":2,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110416","fields":{"date":"2015110416","name":"clicks","value":4,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110417","fields":{"date":"2015110417","name":"clicks","value":3,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110418","fields":{"date":"2015110418","name":"clicks","value":6,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110419","fields":{"date":"2015110419","name":"clicks","value":3,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110420","fields":{"date":"2015110420","name":"clicks","value":4,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110421","fields":{"date":"2015110421","name":"clicks","value":2,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110422","fields":{"date":"2015110422","name":"clicks","value":7,"application":"testapp"}} +{"id":"id:testapp:metric::clicks-2015110423","fields":{"date":"2015110423","name":"clicks","value":1,"application":"testapp"}}
\ No newline at end of file |