This is an automated email from the ASF dual-hosted git repository. zjffdu pushed a commit to branch branch-0.9 in repository https://gitbox.apache.org/repos/asf/zeppelin.git
The following commit(s) were added to refs/heads/branch-0.9 by this push: new 7d5ac44 [hotifx][ZEPPELIN-4925] fix NPE 7d5ac44 is described below commit 7d5ac4407fe4c62fa6e7da792b3cc0594d487a3a Author: Jeff Zhang <zjf...@apache.org> AuthorDate: Mon Jul 6 11:45:06 2020 +0800 [hotifx][ZEPPELIN-4925] fix NPE --- .../org/apache/zeppelin/service/JobManagerService.java | 4 ++-- .../java/org/apache/zeppelin/socket/NotebookServer.java | 14 +++++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/service/JobManagerService.java b/zeppelin-server/src/main/java/org/apache/zeppelin/service/JobManagerService.java index c58b5d6..2521226 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/service/JobManagerService.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/service/JobManagerService.java @@ -81,8 +81,8 @@ public class JobManagerService { if (!conf.isJobManagerEnabled()) { return new ArrayList<>(); } - List<NoteJobInfo> notesJobInfo = new ArrayList<>(); - notebook.getNoteStream() + + List<NoteJobInfo> notesJobInfo = notebook.getNoteStream() .filter(note -> authorizationService.isOwner(context.getUserAndRoles(), note.getId())) .map(note -> new NoteJobInfo(note)) .filter(noteJobInfo -> noteJobInfo.unixTimeLastRun > lastUpdateServerUnixTime) diff --git a/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java b/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java index cf35d91..41f10f8 100644 --- a/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java +++ b/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java @@ -506,8 +506,10 @@ public class NotebookServer extends WebSocketServlet }); } - public void broadcastUpdateNoteJobInfo(long lastUpdateUnixTime) throws IOException { - getJobManagerService().getNoteJobInfoByUnixTime(lastUpdateUnixTime, null, + public void broadcastUpdateNoteJobInfo(Note note, long lastUpdateUnixTime) throws IOException { + ServiceContext context = new ServiceContext(new AuthenticationInfo(), + getNotebookAuthorizationService().getOwners(note.getId())); + getJobManagerService().getNoteJobInfoByUnixTime(lastUpdateUnixTime, context, new WebSocketServiceCallback<List<JobManagerService.NoteJobInfo>>(null) { @Override public void onSuccess(List<JobManagerService.NoteJobInfo> notesJobInfo, @@ -1799,7 +1801,9 @@ public class NotebookServer extends WebSocketServlet @Override public void onParagraphRemove(Paragraph p) { try { - getJobManagerService().getNoteJobInfoByUnixTime(System.currentTimeMillis() - 5000, null, + ServiceContext context = new ServiceContext(new AuthenticationInfo(), + getNotebookAuthorizationService().getOwners(p.getNote().getId())); + getJobManagerService().getNoteJobInfoByUnixTime(System.currentTimeMillis() - 5000, context, new JobManagerServiceCallback()); } catch (IOException e) { LOG.warn("can not broadcast for job manager: " + e.getMessage(), e); @@ -1809,7 +1813,7 @@ public class NotebookServer extends WebSocketServlet @Override public void onNoteRemove(Note note, AuthenticationInfo subject) { try { - broadcastUpdateNoteJobInfo(System.currentTimeMillis() - 5000); + broadcastUpdateNoteJobInfo(note, System.currentTimeMillis() - 5000); } catch (IOException e) { LOG.warn("can not broadcast for job manager: " + e.getMessage(), e); } @@ -1918,7 +1922,7 @@ public class NotebookServer extends WebSocketServlet p.setStatusToUserParagraph(p.getStatus()); broadcastParagraph(p.getNote(), p); try { - broadcastUpdateNoteJobInfo(System.currentTimeMillis() - 5000); + broadcastUpdateNoteJobInfo(p.getNote(), System.currentTimeMillis() - 5000); } catch (IOException e) { LOG.error("can not broadcast for job manager {}", e); }