hadoop-hive-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Prasad Chakka (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HIVE-405) Cleanup operator initialization
Date Thu, 16 Jul 2009 17:19:14 GMT

    [ https://issues.apache.org/jira/browse/HIVE-405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12732029#action_12732029

Prasad Chakka commented on HIVE-405:

i thought about it but didn't do it for two reasons

1) any operator can choose not to call initializeChildren. eg. MapOperator does not call initializeChildren()
directly but calls initialize() on children directly with different ObjectInspector object
for each child.

2) ScriptOperator.initializeOp() seems to do some more stuff after calling initializeChildren()
which is different from calling initiaizeChildren() after calling initializeOp()

Even if 2) doesn't matter, I don't see how we can get around 1) in the scheme you suggested

If you agree then I am going to upload a new patch which fixes TestOperators (which was failing
after merging with trunk).

> Cleanup operator initialization
> -------------------------------
>                 Key: HIVE-405
>                 URL: https://issues.apache.org/jira/browse/HIVE-405
>             Project: Hadoop Hive
>          Issue Type: Bug
>          Components: Query Processor
>    Affects Versions: 0.4.0
>            Reporter: Zheng Shao
>            Assignee: Prasad Chakka
>            Priority: Critical
>         Attachments: hive-405.6.patch, hive-405.7.patch, hive-405.patch
> We are always passing the same ObjectInspector, so there is no need to pass it again
and again in forward.
> Also there is a problem that can ONLY be fixed by passing ObjectInspector in init: Outer
Joins - Outer Joins may not be able to get ObjectInspectors for all inputs, as a result, there
is no way to construct an output ObjectInspector based on the inputs. Currently we have hard-coded
code that assumes joins are always outputting Strings, which did break but was hidden by the
old framework (because we do toString() when serializing the output, and toString() is defined
for all Java Classes).

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message