Skip to content

Commit 4d2f85a

Browse files
handle KeyError when get session (#641)
* handle KeyError when get session * Run maintainer script by blink1073 ["", "pre-commit run --all-files"] Co-authored-by: GitHub Action <41898282+github-actions[bot]@users.noreply.github.com>
1 parent 606487a commit 4d2f85a

File tree

3 files changed

+408
-8
lines changed

3 files changed

+408
-8
lines changed

jupyter_server/services/sessions/sessionmanager.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,10 @@ async def get_session(self, **kwargs):
216216

217217
raise web.HTTPError(404, u"Session not found: %s" % (", ".join(q)))
218218

219-
model = await self.row_to_model(row)
219+
try:
220+
model = await self.row_to_model(row)
221+
except KeyError as e:
222+
raise web.HTTPError(404, u"Session not found: %s" % str(e))
220223
return model
221224

222225
async def update_session(self, session_id, **kwargs):

jupyter_server/tests/services/sessions/test_manager.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ async def test_get_session_dead_kernel(session_manager):
9191
)
9292
# Kill the kernel
9393
await session_manager.kernel_manager.shutdown_kernel(session["kernel"]["id"])
94-
with pytest.raises(KeyError):
94+
with pytest.raises(web.HTTPError):
9595
await session_manager.get_session(session_id=session["id"])
9696
# no session left
9797
listed = await session_manager.list_sessions()

0 commit comments

Comments
 (0)