From 67f1514d706e9294dbc320c9d34e97223fe1bee5 Mon Sep 17 00:00:00 2001 From: Benoy Antony Date: Thu, 27 Apr 2017 23:27:33 -0700 Subject: [PATCH 1/3] ZEPPELIN-2463 Avoid Locking interpreterSettings during Notebook deletion --- .../interpreter/InterpreterSettingManager.java | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java index 1b05a7608ac..7ff90065e97 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java @@ -455,11 +455,9 @@ public List getInterpreterSettings(String noteId) { private List getNoteInterpreterSettingBinding(String noteId) { LinkedList bindings = new LinkedList<>(); - synchronized (interpreterSettings) { - List settingIds = interpreterBindings.get(noteId); - if (settingIds != null) { - bindings.addAll(settingIds); - } + List settingIds = interpreterBindings.get(noteId); + if (settingIds != null) { + bindings.addAll(settingIds); } return bindings; } @@ -888,7 +886,6 @@ public void removeRepository(String id) throws IOException { } public void removeNoteInterpreterSettingBinding(String user, String noteId) throws IOException { - synchronized (interpreterSettings) { List settingIds = (interpreterBindings.containsKey(noteId) ? interpreterBindings.remove(noteId) : Collections.emptyList()); @@ -899,7 +896,6 @@ public void removeNoteInterpreterSettingBinding(String user, String noteId) thro } } saveToFile(); - } } /** From 0e0bb602a0a04531a917eadc873e03adb3f37b11 Mon Sep 17 00:00:00 2001 From: Benoy Antony Date: Fri, 28 Apr 2017 00:07:42 -0700 Subject: [PATCH 2/3] fix checkstyle warnings --- .../interpreter/InterpreterSettingManager.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java index 7ff90065e97..ff24f167201 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java @@ -886,16 +886,16 @@ public void removeRepository(String id) throws IOException { } public void removeNoteInterpreterSettingBinding(String user, String noteId) throws IOException { - List settingIds = (interpreterBindings.containsKey(noteId) ? - interpreterBindings.remove(noteId) : + List settingIds = (interpreterBindings.containsKey(noteId) ? + interpreterBindings.remove(noteId) : Collections.emptyList()); - for (String settingId : settingIds) { - InterpreterSetting setting = get(settingId); - if (setting != null) { - this.removeInterpretersForNote(setting, user, noteId); - } + for (String settingId : settingIds) { + InterpreterSetting setting = get(settingId); + if (setting != null) { + this.removeInterpretersForNote(setting, user, noteId); } - saveToFile(); + } + saveToFile(); } /** From 6f28d74a0680367abab72204b80e49587566dd24 Mon Sep 17 00:00:00 2001 From: Benoy Antony Date: Wed, 3 May 2017 21:26:58 -0700 Subject: [PATCH 3/3] replace check and remove with remove --- .../interpreter/InterpreterSettingManager.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java index ff24f167201..0a965df8ea4 100644 --- a/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java +++ b/zeppelin-zengine/src/main/java/org/apache/zeppelin/interpreter/InterpreterSettingManager.java @@ -886,13 +886,13 @@ public void removeRepository(String id) throws IOException { } public void removeNoteInterpreterSettingBinding(String user, String noteId) throws IOException { - List settingIds = (interpreterBindings.containsKey(noteId) ? - interpreterBindings.remove(noteId) : - Collections.emptyList()); - for (String settingId : settingIds) { - InterpreterSetting setting = get(settingId); - if (setting != null) { - this.removeInterpretersForNote(setting, user, noteId); + List settingIds = interpreterBindings.remove(noteId); + if (settingIds != null) { + for (String settingId : settingIds) { + InterpreterSetting setting = get(settingId); + if (setting != null) { + this.removeInterpretersForNote(setting, user, noteId); + } } } saveToFile();