From 5ffcc11a4bce8f69d911fb700c90d2aeddbad8e7 Mon Sep 17 00:00:00 2001 From: Jeff Zhang Date: Sun, 22 Apr 2018 11:46:53 +0800 Subject: [PATCH] ZEPPELIN-3401. Deadlock while restarting interpreter --- .../src/main/java/org/apache/zeppelin/notebook/Note.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/Note.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/Note.java index 664e986e45c..b83954c9563 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/Note.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/notebook/Note.java @@ -101,6 +101,7 @@ public class Note implements ParagraphJobListener, JsonSerializable { private transient NotebookRepo repo; private transient SearchService index; private transient ScheduledFuture delayedPersist; + private transient Object delayedPersistLock = new Object(); private transient NoteEventListener noteEventListener; private transient Credentials credentials; private transient NoteNameListener noteNameListener; @@ -852,7 +853,7 @@ public Note getUserNote(String user) { } private void startDelayedPersistTimer(int maxDelaySec, final AuthenticationInfo subject) { - synchronized (this) { + synchronized (delayedPersistLock) { if (delayedPersist != null) { return; } @@ -872,11 +873,10 @@ public void run() { } private void stopDelayedPersistTimer() { - synchronized (this) { + synchronized (delayedPersistLock) { if (delayedPersist == null) { return; } - delayedPersist.cancel(false); } }