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/ThriftUnionObjectIn spector.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: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
