Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Synapse fails to start with ModuleNotFoundError after upgrading to 1.60.0 when python module sqlite3 is not installed #12962

@joh-ku

Description

@joh-ku

Description

After upgrading from v1.59.1 to v1.60.0 synapse fails to start with a ModuleNotFoundError: No module named '_sqlite3' even if PostgreSQL is being used. I didn't find any hint in the release notes that this behaviour is expected.
I found a related bug report documented in #7127 and #7155.

Trace

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/usr/local/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/app/homeserver.py", line 39, in <module>
    from synapse.app import _base
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/app/_base.py", line 62, in <module>
    from synapse.events.spamcheck import load_legacy_spam_checkers
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/events/spamcheck.py", line 31, in <module>
    from synapse.rest.media.v1._base import FileInfo
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/rest/__init__.py", line 18, in <module>
    from synapse.rest import admin
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/rest/admin/__init__.py", line 29, in <module>
    from synapse.rest.admin._base import admin_patterns, assert_requester_is_admin
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/rest/admin/_base.py", line 19, in <module>
    from synapse.api.auth import Auth
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/api/auth.py", line 36, in <module>
    from synapse.storage.databases.main.registration import TokenLookupResult
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/__init__.py", line 31, in <module>
    from synapse.storage.databases import Databases
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/databases/__init__.py", line 18, in <module>
    from synapse.storage._base import SQLBaseStore
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/_base.py", line 20, in <module>
    from synapse.storage.database import make_in_list_sql_clause  # noqa: F401; noqa: F401
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/database.py", line 57, in <module>
    from synapse.storage.background_updates import BackgroundUpdater
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/background_updates.py", line 36, in <module>
    from . import engines
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/engines/__init__.py", line 18, in <module>
    from .sqlite import Sqlite3Engine
  File "/srv/synapse/system/lib/python3.9/site-packages/synapse/storage/engines/sqlite.py", line 15, in <module>
    import sqlite3
  File "/usr/local/lib/python3.9/sqlite3/__init__.py", line 57, in <module>
    from sqlite3.dbapi2 import *
  File "/usr/local/lib/python3.9/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ModuleNotFoundError: No module named '_sqlite3'

Steps to reproduce

  • stop synapse
  • upgrade synapse pip install -U matrix-synapse
  • start synapse

Fix

Manual installation of databases/py-sqlite3, which is not part of the base port lang/python39, solves the issue.

(Rolling back with pip install matrix-synapse==1.59.1 also solves the issue.)

Version information

Version:

Homeserver running on v1.59.1 trying an upgrade to v1.60.0

Platform:

Python 3.9.13
PostgreSQL 13.7
FreeBSD 13.1-RELEASE

Metadata

Metadata

Assignees

No one assigned

    Labels

    S-TolerableMinor significance, cosmetic issues, low or no impact to users.X-RegressionSomething broke which worked on a previous release

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions