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

Vineet Garg commented on HIVE-20839:
------------------------------------

[~jdere] Went through the patch. This will fix the constant expression case but 
I am afraid the same problem could occur for other type of expressions.

Basically given an ExprNodeDesc and RS we are trying to get to the 'key' based 
on 'value' using a map (col expr map). The value equality is based on isSame, 
in this particular since ExprNodeConstantDesc implementation of isSame only 
consider value and type we ended up with wrong 'key' because RS's happen to 
have multiple input constant expressions with same value. I feel that we might 
end up with same issue with other type of nodes based upon their implementation 
of isSame.

I believe value equality would be better done using 'equal' i.e. 
{{mapEntry.equal(source)}}. This way it will not be expression specific and 
should be good for all type of expressions.

> "Cannot find field" error during dynamically partitioned hash join
> ------------------------------------------------------------------
>
>                 Key: HIVE-20839
>                 URL: https://issues.apache.org/jira/browse/HIVE-20839
>             Project: Hive
>          Issue Type: Bug
>          Components: Query Processor
>            Reporter: Jason Dere
>            Assignee: Jason Dere
>            Priority: Major
>         Attachments: HIVE-20839.1.patch
>
>
> Occurs in some cases in the non-CBO optimized queries, either if CBO is 
> disabled or has failed due to error.
> {noformat}
> 2018-10-11T04:40:22,724 ERROR [TezTR-85144_8944_1085_28_996_2 
> (1539092085144_8944_1085_28_000996_2)] tez.ReduceRecordProcessor: Hit error 
> while closing operators - failing tree
> 2018-10-11T04:40:22,724 ERROR [TezTR-85144_8944_1085_28_996_2 
> (1539092085144_8944_1085_28_000996_2)] tez.TezProcessor: 
> java.lang.RuntimeException: cannot find field _col304 from [0:_col0, 1:_col1, 
> 2:_col2, 3:_col3, 4:_col4, 5:_col5, 6:_col6, 7:_col7, 8:_col8, 9:_col9, 
> 10:_col10, 11:_col11, 12:_col12, 13:_col13, 14:_col15, 15:_col16, 16:_col17, 
> 17:_col18, 18:_col19, 19:_col20, 20:_col21, 21:_col22, 22:_col23, 23:_col24, 
> 24:_col25, 25:_col26, 26:_col27, 27:_col28, 28:_col29, 29:_col30, 30:_col31, 
> 31:_col32, 32:_col33, 33:_col34, 34:_col35, 35:_col36, 36:_col37, 37:_col38, 
> 38:_col39, 39:_col40, 40:_col41, 41:_col42, 42:_col43, 43:_col44, 44:_col45, 
> 45:_col46, 46:_col47, 47:_col48, 48:_col49, 49:_col50, 50:_col51, 51:_col52, 
> 52:_col53, 53:_col54, 54:_col55, 55:_col56, 56:_col57, 57:_col58, 58:_col59, 
> 59:_col60, 60:_col61, 61:_col62, 62:_col63, 63:_col64, 64:_col65, 65:_col66, 
> 66:_col67, 67:_col68, 68:_col70, 69:_col72, 70:_col73, 71:_col74, 72:_col75, 
> 73:_col76, 74:_col77, 75:_col78, 76:_col79, 77:_col80, 78:_col81, 79:_col82, 
> 80:_col83, 81:_col84, 82:_col85, 83:_col86, 84:_col87, 85:_col88, 86:_col89, 
> 87:_col90, 88:_col91, 89:_col92, 90:_col93, 91:_col94, 92:_col95, 93:_col96, 
> 94:_col97, 95:_col98, 96:_col99, 97:_col100, 98:_col101, 99:_col102, 
> 100:_col103, 101:_col104, 102:_col105, 103:_col106, 104:_col107, 105:_col108, 
> 106:_col109, 107:_col110, 108:_col111, 109:_col112, 110:_col113, 111:_col114, 
> 112:_col115, 113:_col116, 114:_col117, 115:_col118, 116:_col119, 117:_col120, 
> 118:_col121, 119:_col122, 120:_col123, 121:_col124, 122:_col125, 123:_col126, 
> 124:_col127, 125:_col128, 126:_col129, 127:_col130, 128:_col131, 129:_col132, 
> 130:_col133, 131:_col134, 132:_col135, 133:_col136, 134:_col137, 135:_col138, 
> 136:_col139, 137:_col140, 138:_col141, 139:_col142, 140:_col143, 141:_col144, 
> 142:_col145, 143:_col146, 144:_col147, 145:_col148, 146:_col149, 147:_col150, 
> 148:_col151, 149:_col152, 150:_col153, 151:_col154, 152:_col155, 153:_col156, 
> 154:_col157, 155:_col158, 156:_col159, 157:_col160, 158:_col161, 159:_col162, 
> 160:_col163, 161:_col164, 162:_col165, 163:_col166, 164:_col167, 165:_col168, 
> 166:_col169, 167:_col170, 168:_col171, 169:_col318]
> at 
> org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils.getStandardStructFieldRef(ObjectInspectorUtils.java:485)
> at 
> org.apache.hadoop.hive.serde2.objectinspector.StandardStructObjectInspector.getStructFieldRef(StandardStructObjectInspector.java:153)
> at 
> org.apache.hadoop.hive.ql.exec.ExprNodeColumnEvaluator.initialize(ExprNodeColumnEvaluator.java:80)
> at 
> org.apache.hadoop.hive.ql.exec.JoinUtil.getObjectInspectorsFromEvaluators(JoinUtil.java:91)
> at 
> org.apache.hadoop.hive.ql.exec.AbstractMapJoinOperator.initializeOp(AbstractMapJoinOperator.java:74)
> at 
> org.apache.hadoop.hive.ql.exec.MapJoinOperator.initializeOp(MapJoinOperator.java:144)
> at org.apache.hadoop.hive.ql.exec.Operator.initialize(Operator.java:374)
> at 
> org.apache.hadoop.hive.ql.exec.tez.ReduceRecordProcessor.init(ReduceRecordProcessor.java:195)
> at 
> org.apache.hadoop.hive.ql.exec.tez.TezProcessor.initializeAndRunProcessor(TezProcessor.java:188)
> at org.apache.hadoop.hive.ql.exec.tez.TezProcessor.run(TezProcessor.java:172)
> at 
> org.apache.tez.runtime.LogicalIOProcessorRuntimeTask.run(LogicalIOProcessorRuntimeTask.java:370)
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:73)
> at 
> org.apache.tez.runtime.task.TaskRunner2Callable$1.run(TaskRunner2Callable.java:61)
> at java.security.AccessController.doPrivileged(Native Method)
> at javax.security.auth.Subject.doAs(Subject.java:422)
> at 
> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1869)
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to