Mark writes:
as I kept getting an error when starting:�
#django-admin shell
from hyperkitty.models.mailinglist import MailingList ... django.core.exceptions.ImproperlyConfigured ...
This suggests to me that you have multiple versions of Python and/or Django installed. This is an advantage of using a venv -- once activated, you are much more likely to get a well-defined, consistent set of utilities and libraries.
By the way, does that # prompt mean you are logged in as root while you're working with Mailman? That is inadvisable, as if you change anything there is a chance that root will be the owner of the file, and the list user will not be able to work with it.
Also, if you have mailman-web installed, I recommend using that rather than django-admin or python3 manage.py. Each Django application may have its own copy of django-admin (not usually, but I've seen it happen) and definitely will have its own copy of manage.py. mailman-web knows how to work with both HyperKitty and Postorius without getting confused about that.
Does this (missing list_id) give any clue as to why the archive-search isn't working, or is just that starting with "# python3 manage.py shell" is the wrong thing to do?
If all you're doing is querying the database, it doesn't really matter how you do this. If you get the right copies of python3, django-admin, and manage-py it's all just going to work. It doesn't matter which utility you start with, it all ends up going through the same Django modules in the end.
The process of search index construction is both CPU and wall-clock time intensive. For this reason, the cron jobs that do regular index updating (I think once an hour?) are separate from the utility that constructs the index in the first place when you have existing archives (either migrated from another MLM such as Mailman 2, or if you're upgrading to better archive software).
Is it possible that you have most of a bunch of migrated archives indexed because the migration process did it, but that the periodic update process (like cron jobs, but actually run by the Django queue task manager IIRC) is not running, so no new posts are being archived? That fits the symptoms you described so far (that I recall).
Steve