[ https://issues.apache.org/jira/browse/HIVE-5302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13780718#comment-13780718 ]
Sean Busbey commented on HIVE-5302: ----------------------------------- Arg. Okay, tl;dr: I need to go back to the drawing board on finding a suitable test. Please lower priority or close as appropriate. Long version: In setting up my test case I was too quick to presume AvroSerdeException showing up in the logs was a hard failure. But there does appear to be a non-fatal problem when the partition pruner optimization is working with a non-partitioned avro table. It attempts to make a shadow partition to represent the whole table. Creating this partition relies on an initializer that goes through a code path for instantiating the SerDe based on feedback just from MetaStoreUtils. So the AvroSerDe fails during initialization (and logs a WARN about it with an AvroSerdeException), but since this instance of the serde is never actually used, it doesn't result in a failure. you can see this by even running the basic sanity test: {noformat} $> ant clean package … $> ant -Dmodule=ql -Dtestcase=TestCliDriver -Dqfile=avro_sanity_test.q test … BUILD SUCCESSFUL Total time: 1 minute 15 seconds $> less build/ql/tmp/hive.log {noformat} In the log grep for AvroSerdeException (for me it's line 3198) So sad Sean will need to go back to finding a case where this explodes in a way that stops things. On the matter of query plan bloat, we could isolate related changes to the Avro Serde so long as there's a way to get at table properties during SerDe initialization. That way it could check partition-specific and then fall back to table on its own. I'll worry about that once I find a test case. > PartitionPruner fails on Avro non-partitioned data > -------------------------------------------------- > > Key: HIVE-5302 > URL: https://issues.apache.org/jira/browse/HIVE-5302 > Project: Hive > Issue Type: Bug > Components: Serializers/Deserializers > Affects Versions: 0.11.0 > Reporter: Sean Busbey > Assignee: Sean Busbey > Priority: Blocker > Labels: avro > Attachments: HIVE-5302.1-branch-0.12.patch.txt, > HIVE-5302.1.patch.txt, HIVE-5302.1.patch.txt > > > While updating HIVE-3585 I found a test case that causes the failure in the > MetaStoreUtils partition retrieval from back in HIVE-4789. > in this case, the failure is triggered when the partition pruner is handed a > non-partitioned table and has to construct a pseudo-partition. > e.g. > {code} > INSERT OVERWRITE TABLE partitioned_table PARTITION(col) SELECT id, foo, col > FROM non_partitioned_table WHERE col <= 9; > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira