Diederik has submitted this change and it was merged.
Change subject: Switch PageViewEvalFunc's returned schema to tuple
......................................................................
Switch PageViewEvalFunc's returned schema to tuple
When using current svn's pig, zero_country.pig failed with
<file zero_country.pig, line 37, column 13> pig script failed to validate:
org.apache.pig.impl.logicalLayer.FrontendException: ERROR 0: Given UDF returns
an improper Schema. Schema should only contain one field of a Tuple, Bag, or a
single type. Returns: {chararray,chararray,chararray}
. We fix the output schema of PageViewEvalFunc to return a tuple.
Change-Id: Iccaed180ebcadcc8896a1e5ba30bc841a5b17af7
---
M
kraken-pig/src/main/java/org/wikimedia/analytics/kraken/pig/PageViewEvalFunc.java
1 file changed, 12 insertions(+), 7 deletions(-)
Approvals:
Diederik: Verified; Looks good to me, approved
diff --git
a/kraken-pig/src/main/java/org/wikimedia/analytics/kraken/pig/PageViewEvalFunc.java
b/kraken-pig/src/main/java/org/wikimedia/analytics/kraken/pig/PageViewEvalFunc.java
index 94ebbee..b787552 100644
---
a/kraken-pig/src/main/java/org/wikimedia/analytics/kraken/pig/PageViewEvalFunc.java
+++
b/kraken-pig/src/main/java/org/wikimedia/analytics/kraken/pig/PageViewEvalFunc.java
@@ -23,13 +23,12 @@
import org.apache.pig.data.DataType;
import org.apache.pig.data.Tuple;
import org.apache.pig.data.TupleFactory;
+import org.apache.pig.impl.logicalLayer.FrontendException;
import org.apache.pig.impl.logicalLayer.schema.Schema;
import org.wikimedia.analytics.kraken.pageview.ProjectInfo;
import java.net.MalformedURLException;
import java.net.URL;
-import java.util.ArrayList;
-import java.util.List;
/**
* Entry point for the Pig UDF class that uses the Pageview filter logic.
@@ -135,10 +134,16 @@
throw new RuntimeException(e);
}
- List<Schema.FieldSchema> fields = new ArrayList<Schema.FieldSchema>();
- fields.add(new Schema.FieldSchema(null, DataType.CHARARRAY)); //
language
- fields.add(new Schema.FieldSchema(null, DataType.CHARARRAY)); //
project
- fields.add(new Schema.FieldSchema(null, DataType.CHARARRAY)); //
site_version
- return new Schema(fields);
+ Schema tupleSchema = new Schema();
+ tupleSchema.add(new Schema.FieldSchema("language",
DataType.CHARARRAY));
+ tupleSchema.add(new Schema.FieldSchema("project", DataType.CHARARRAY));
+ tupleSchema.add(new Schema.FieldSchema("site_version",
DataType.CHARARRAY));
+ Schema ret;
+ try {
+ ret = new Schema(new Schema.FieldSchema("page_view", tupleSchema,
DataType.TUPLE));
+ } catch (FrontendException e) {
+ throw new RuntimeException(e);
+ }
+ return ret;
}
}
--
To view, visit https://gerrit.wikimedia.org/r/73746
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: Iccaed180ebcadcc8896a1e5ba30bc841a5b17af7
Gerrit-PatchSet: 1
Gerrit-Project: analytics/kraken
Gerrit-Branch: master
Gerrit-Owner: QChris <[email protected]>
Gerrit-Reviewer: Diederik <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits