Skip to content

database is locked #3

Closed
Closed
@Zsailer

Description

@Zsailer

We're seeing the following issue when using jupyter-collaboration:

asctime:  2024-06-05 18:21:52,721
    exc_info:    + Exception Group Traceback (most recent call last):
  |   File "/pythonpath/lib/python3.9/site-packages/pycrdt_websocket/yroom.py", line 223, in start
  |     self._task_group.start_soon(self._broadcast_updates)
  |   File "/pythonpath/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 678, in __aexit__
  |     raise BaseExceptionGroup(
  | exceptiongroup.ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
  +-+---------------- 1 ----------------
    | Traceback (most recent call last):
    |   File "/pythonpath/lib/python3.9/site-packages/pycrdt_websocket/ystore.py", line 466, in write
    |     await cursor.execute(
    |   File "/pythonpath/lib/python3.9/site-packages/sqlite_anyio/sqlite.py", line 58, in execute
    |     real_cursor = await to_thread.run_sync(self._real_cursor.execute, sql, parameters, limiter=self._limiter)
    |   File "/pythonpath/lib/python3.9/site-packages/anyio/to_thread.py", line 56, in run_sync
    |     return await get_async_backend().run_sync_in_worker_thread(
    |   File "/pythonpath/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 2144, in run_sync_in_worker_thread
    |     return await future
    |   File "/pythonpath/lib/python3.9/site-packages/anyio/_backends/_asyncio.py", line 851, in run
    |     result = context.run(func, *args)
    | sqlite3.OperationalError: database is locked

when this happens, the whole notebook server becomes unusable. None of the documents can be opened.

This looks related to an issue we saw in jupyter_server_fileid: jupyter-server/jupyter_server_fileid#77

I'll investigate further, but at a minimum, we need to handle this exception to avoid locking down the whole server.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions