Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.5.0
-
None
-
None
Description
Each time a query executes we create a new instance of HiveAuthzConf which in turn creates a ResourceAuthorizationProvider. Within ResourceAuthorizationProvider there is a thread local variable: "ThreadLocal<List<String>> lastFailedPrivileges" which is not getting garbage collected since the parent thread is still alive. Over time, this leads to a memory leak in HS2. We need to be sure that any ThreadLocal state is cleaned up when we are done using it (or consider avoiding the use of ThreadLocal if possible).