You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Travis Woodruff (JIRA)" <ji...@apache.org> on 2014/06/18 18:44:26 UTC
[jira] [Created] (PIG-4018) Schema validation fails with UNION
ONSCHEMA
Travis Woodruff created PIG-4018:
------------------------------------
Summary: Schema validation fails with UNION ONSCHEMA
Key: PIG-4018
URL: https://issues.apache.org/jira/browse/PIG-4018
Project: Pig
Issue Type: Bug
Reporter: Travis Woodruff
Assignee: Travis Woodruff
When relations with differing schemas are unioned (using UNION ONSCHEMA), schema validation can fail with this exception:
{{org.apache.pig.impl.plan.PlanValidationException: Logical plan invalid state: invalid uid -1 in schema}}
This worked before the fix for PIG-3492.
The merged schema (from {{LOUnion.getSchema()}}) does not contain uids for columns not in the schema of the first input (uids are set to -1). This is because only the first input's schema is used for looking up "cached" uids.
Normally, this isn't a problem because {{UnionOnSchemaSetter}} comes along and fixes the missing fields.
However, when {{ImplicitSplitInsertVisitor}} is active, it is called before {{UnionOnSchemaSetter}}. {{ImplicitSplitInsertVisitor}} calls {{schemaResetter.visit()}}, which throws the validation exception because {{UnionOnSchemaSetter}} has not had a chance to create the missing fields (and this uids are still -1 for these fields).
--
This message was sent by Atlassian JIRA
(v6.2#6252)