On our installation, we are often gettting Internal Server Error (500). The logs look like this:
ERROR 2018-01-09 13:52:57,640 1604 django.request Internal Server Error: /hyperkitty/list/test@seznami.cjvt.si/
Traceback (most recent call last):
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/core/handlers/exception.py", line 42, in inner
response = get_response(request)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/core/handlers/base.py", line 249, in _legacy_get_response
response = self._get_response(request)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/core/handlers/base.py", line 187, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/core/handlers/base.py", line 185, in _get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/HyperKitty-1.1.0-py2.7.egg/hyperkitty/lib/view_helpers.py", line 133, in inner
mlist = MailingList.objects.get(name=mlist_fqdn)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/manager.py", line 85, in manager_method
return getattr(self.get_queryset(), name)(*args, **kwargs)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/query.py", line 379, in get
num = len(clone)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/query.py", line 238, in __len__
self._fetch_all()
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/query.py", line 1087, in _fetch_all
self._result_cache = list(self.iterator())
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/query.py", line 54, in __iter__
results = compiler.execute_sql()
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/models/sql/compiler.py", line 835, in execute_sql
cursor.execute(sql, params)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/utils.py", line 94, in __exit__
six.reraise(dj_exc_type, dj_exc_value, traceback)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/backends/utils.py", line 64, in execute
return self.cursor.execute(sql, params)
File "/opt/mailman/venv2/local/lib/python2.7/site-packages/Django-1.10.7-py2.7.egg/django/db/backends/sqlite3/base.py", line 337, in execute
return Database.Cursor.execute(self, query, params)
OperationalError: database is locked
Does this suggest I should switch from sqlite to postgres (https://stackoverflow.com/a/26864360)? I'm happy to do that, but how do I migrate the data between the databases (after installing postgres and creating the database)? I've found this doc (http://mailman.readthedocs.io/en/latest/src/mailman/docs/database.html#datab...), but I don't think I understand this and I haven't used alembic: these instructions are just for when you modify the model within the same database, right?
Thanks in advance!