You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lens.apache.org by pu...@apache.org on 2018/01/23 07:37:07 UTC
lens git commit: LENS-1497: NPE while closing idle connections
Repository: lens
Updated Branches:
refs/heads/master 3d55b642a -> d0b78e81b
LENS-1497: NPE while closing idle connections
Project: http://git-wip-us.apache.org/repos/asf/lens/repo
Commit: http://git-wip-us.apache.org/repos/asf/lens/commit/d0b78e81
Tree: http://git-wip-us.apache.org/repos/asf/lens/tree/d0b78e81
Diff: http://git-wip-us.apache.org/repos/asf/lens/diff/d0b78e81
Branch: refs/heads/master
Commit: d0b78e81b3299aedb81421a1ced92c56e948fd10
Parents: 3d55b64
Author: Rajitha R <ra...@gmail.com>
Authored: Tue Jan 23 13:06:07 2018 +0530
Committer: Puneet Gupta <pu...@apache.org>
Committed: Tue Jan 23 13:06:07 2018 +0530
----------------------------------------------------------------------
.../org/apache/lens/server/BaseLensService.java | 17 +++++++++++++----
.../lens/server/session/HiveSessionService.java | 4 +++-
2 files changed, 16 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lens/blob/d0b78e81/lens-server/src/main/java/org/apache/lens/server/BaseLensService.java
----------------------------------------------------------------------
diff --git a/lens-server/src/main/java/org/apache/lens/server/BaseLensService.java b/lens-server/src/main/java/org/apache/lens/server/BaseLensService.java
index d7ce434..b9fcdd8 100644
--- a/lens-server/src/main/java/org/apache/lens/server/BaseLensService.java
+++ b/lens-server/src/main/java/org/apache/lens/server/BaseLensService.java
@@ -265,6 +265,11 @@ public abstract class BaseLensService extends CompositeService implements Extern
LensSessionHandle restoredSession = new LensSessionHandle(hiveSessionHandle.getHandleIdentifier().getPublicId(),
hiveSessionHandle.getHandleIdentifier().getSecretId());
SESSION_MAP.put(restoredSession.getPublicId().toString(), restoredSession);
+ SessionUser sessionUser = SESSION_USER_INSTANCE_MAP.get(userName);
+ if (sessionUser == null) {
+ sessionUser = new SessionUser(userName);
+ SESSION_USER_INSTANCE_MAP.put(userName, sessionUser);
+ }
updateSessionsPerUser(userName);
} catch (HiveSQLException e) {
throw new LensException("Error restoring session " + sessionHandle, e);
@@ -340,10 +345,14 @@ public abstract class BaseLensService extends CompositeService implements Extern
}
synchronized (sessionUser) {
Integer sessionCount = SESSIONS_PER_USER.get(userName);
- if (sessionCount == 1) {
- SESSIONS_PER_USER.remove(userName);
- } else {
- SESSIONS_PER_USER.put(userName, --sessionCount);
+ if (null != sessionCount) {
+ if (sessionCount == 1) {
+ SESSIONS_PER_USER.remove(userName);
+ } else {
+ SESSIONS_PER_USER.put(userName, --sessionCount);
+ }
+ }else {
+ log.info("Trying to decrement session count for non existing session {} for user {}: ",sessionHandle, userName);
}
}
}
http://git-wip-us.apache.org/repos/asf/lens/blob/d0b78e81/lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java
----------------------------------------------------------------------
diff --git a/lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java b/lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java
index a9fd233..31ac358 100644
--- a/lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java
+++ b/lens-server/src/main/java/org/apache/lens/server/session/HiveSessionService.java
@@ -347,7 +347,9 @@ public class HiveSessionService extends BaseLensService implements SessionServic
public synchronized void start() {
super.start();
- sessionExpiryThread = Executors.newSingleThreadScheduledExecutor();
+ sessionExpiryThread = Executors.newSingleThreadScheduledExecutor(runnable
+ -> new Thread(runnable, "Session-expiry-thread"));
+
int sessionExpiryInterval = getSessionExpiryInterval();
sessionExpiryThread.scheduleWithFixedDelay(sessionExpiryRunnable, sessionExpiryInterval,
sessionExpiryInterval, TimeUnit.SECONDS);