[ https://issues.apache.org/jira/browse/HIVE-25729?focusedWorklogId=689042&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-689042 ]
ASF GitHub Bot logged work on HIVE-25729: ----------------------------------------- Author: ASF GitHub Bot Created on: 02/Dec/21 04:38 Start Date: 02/Dec/21 04:38 Worklog Time Spent: 10m Work Description: dengzhhu653 commented on pull request #2808: URL: https://github.com/apache/hive/pull/2808#issuecomment-984286215 > Sorry @dengzhhu653 , was on vacation. Can you add some details on why this change is necessary? thanks. Thank you for the feedback. [HIVE-11586](https://issues.apache.org/jira/browse/HIVE-11586) has solved the problem that a uninitialized instance of ReflectionStructObjectInspector may be returned in case of multi threads trying to get it, npe would be thrown if we refer to some fields of the inspector. In order to make true that the ReflectionStructObjectInspector is fully inited, [others may wait for up to 3 seconds](https://github.com/apache/hive/blob/master/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/ObjectInspectorFactory.java#L106-L121). The [ThriftStructObjectInspector](https://github.com/apache/hive/blob/7b3ecf617a6d46f48a3b6f77e0339fd4ad95a420/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/ReflectionStructObjectInspector.java#L165-L178) will notify the monitor on finishing initialization, but [ThriftUnionObjectInspector](https://github.com/apache/hive/blob/master/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/ThriftUnionObjectInspector.java#L95-L104) misses to do this in his own overriden `init` method. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 689042) Time Spent: 40m (was: 0.5h) > ThriftUnionObjectInspector should be notified when fully inited > --------------------------------------------------------------- > > Key: HIVE-25729 > URL: https://issues.apache.org/jira/browse/HIVE-25729 > Project: Hive > Issue Type: Bug > Components: Serializers/Deserializers > Reporter: Zhihua Deng > Assignee: Zhihua Deng > Priority: Minor > Labels: pull-request-available > Time Spent: 40m > Remaining Estimate: 0h > > For thread safe purpose, a ReflectionStructObjectInspector instance would > wait for 3 seconds to ensure the returning ObjectInspector is fully inited, > {code:java} > synchronized (soi) { > while (!soi.isFullyInited(checkedTypes)) { > // .... > soi.wait(3000); > } > } {code} > It seems that we are missing to notify ThriftUnionObjectInspector when it has > been inited. -- This message was sent by Atlassian Jira (v8.20.1#820001)