Upgrade 4.1 -> 4.6

I let myself get behind in upgrades- I always manage to find difficulties, so I just procrastinated.

Anyway, I followed all the instructions (export/import database), and now I can’t get Mayan to start. It’s apparently related to signature captures::

| Traceback (most recent call last):
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/smart_settings/classes.py", line 438, in do_post_edit_function_call
app_1                  |     self.post_edit_function(setting=self)
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/signature_captures/setting_callbacks.py", line 11, in callback_update_signature_capture_cache_size
app_1                  |     cache = Cache.objects.get(
app_1                  |             ^^^^^^^^^^^^^^^^^^
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/db/models/manager.py", line 87, in manager_method
app_1                  |     return getattr(self.get_queryset(), name)(*args, **kwargs)
app_1                  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/db/models/query.py", line 637, in get
app_1                  |     raise self.model.DoesNotExist(
app_1                  | mayan.apps.file_caching.models.Cache.DoesNotExist: Cache matching query does not exist.
app_1                  | 
app_1                  | The above exception was the direct cause of the following exception:
app_1                  | 
app_1                  | Traceback (most recent call last):
app_1                  |   File "/opt/mayan-edms/bin/mayan-edms.py", line 22, in <module>
app_1                  |     main()
app_1                  |   File "/opt/mayan-edms/bin/mayan-edms.py", line 18, in main
app_1                  |     execute_from_command_line(sys.argv)
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
app_1                  |     utility.execute()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/core/management/__init__.py", line 416, in execute
app_1                  |     django.setup()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/__init__.py", line 24, in setup
app_1                  |     apps.populate(settings.INSTALLED_APPS)
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/django/apps/registry.py", line 124, in populate
app_1                  |     app_config.ready()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/smart_settings/apps.py", line 84, in ready
app_1                  |     setting_cluster.do_post_edit_function_call()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/smart_settings/classes.py", line 139, in do_post_edit_function_call
app_1                  |     namespace.do_post_edit_function_call()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/smart_settings/classes.py", line 276, in do_post_edit_function_call
app_1                  |     setting.do_post_edit_function_call()
app_1                  |   File "/opt/mayan-edms/lib/python3.11/site-packages/mayan/apps/smart_settings/classes.py", line 440, in do_post_edit_function_call
app_1                  |     raise SettingsException(
app_1                  | mayan.apps.smart_settings.exceptions.SettingsException: Unable to execute setting post update function for setting "SIGNATURE_CAPTURES_SIGNATURE_CAPTURE_CACHE_MAXIMUM_SIZE". Verify the value of the setting or rollback to the previous known working

Any help would be appreciated.

Upgrades need to be performed for each minor version:

-4.1 → 4.2
-4.2 → 4.3
-4.3 → 4.4
-4.4 → 4.5
-4.5 → 4.6

Restore the database and the installation to version 4.1.

Then upgrade to the latest of each minor version and start the installation (use the s tag to make this easier: s4.1, s4.2, s4.3, etc).

Let the installation fully start, the login, make sure the documents are present. Repeat for each minor version.

This will allow the new structures added in each version to fully initialize.