kasakrisz commented on code in PR #5649:
URL: https://github.com/apache/hive/pull/5649#discussion_r1991275398
##########
service/src/java/org/apache/hive/service/cli/CLIService.java:
##########
@@ -126,13 +126,14 @@ public synchronized void init(HiveConf hiveConf) {
}
private void applyAuthorizationConfigPolicy(HiveConf newHiveConf) throws
HiveException,
- MetaException {
+ MetaException, IOException {
// authorization setup using SessionState should be revisited eventually,
as
// authorization and authentication are not session specific settings
SessionState ss = new SessionState(newHiveConf);
ss.setIsHiveServerQuery(true);
SessionState.start(ss);
ss.applyAuthorizationPolicy();
+ ss.close();
Review Comment:
`HiveMaterializedViewsRegistry.Loader` is a background thread for loading
and compiling materialized views enabled for automatic query rewrite. The
thread is started at HS2 start to inititalize the registry and it is also
scheduled for periodic runs to update changes.
Seems that the only reason `SessionState.start` is called in this background
thread is that we reach this point of code before it is called on the main
thread at HS2 start up: https://issues.apache.org/jira/browse/HIVE-19691
The reason why a new `SessionState` instance is created is that we don't
need TEZ session since no execution is happening in this thread:
https://issues.apache.org/jira/browse/HIVE-21085
I'm thinking about whether we have to create new `SessionState` object at
every refresh or it is required only at HS2 startup?
Anyway, I'm not aware of any reason cleaning of the `SessionState` was not
added so I think it is a bug.
--
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]