zulip/analytics
Alex Vandiver a782aae78e analytics: Regenerate partial indexes due to Django bug.
Due to a bug[^1] in Django 4.2, fixed in 4.2.6, queries using
`__isnull` added an unnecessary cast.  This cast was _also_ used in
`WHERE` clauses for partial indexes.  This means that partial indexes
created before Zulip was using Django 4.2 (i.e. before Zulip Server
7.0 or 2c20028aa4) will not be used when the server is using Django
4.2.0 through 4.2.5 -- and, conversely, that indexes created while
Zulip had those versions of Django (i.e. Zulip Server 7.0 through 7.4
or 7807bff526) will not be used later.

We re-create the indexes, to ensure that users that installed Zulip
after Zulip Server 7.0 / 2c20028aa4 and before Zulip Server 7.5 /
7807bff526 have indexes which can be used by current Django.  This
is useless work for some installations, but most analytics tables are
not large enough for this to take significant time.

[^1]: https://code.djangoproject.com/ticket/34840
2023-11-16 13:53:04 -08:00
..
lib counts: Add new mobile_pushes RemoteRealmCount stats. 2023-11-10 16:09:11 -08:00
management counts: Add new mobile_pushes RemoteRealmCount stats. 2023-11-10 16:09:11 -08:00
migrations analytics: Regenerate partial indexes due to Django bug. 2023-11-16 13:53:04 -08:00
tests counts: Add new mobile_pushes RemoteRealmCount stats. 2023-11-10 16:09:11 -08:00
views stripe: Move `make_end_of_cycle_updates_if_needed` to BillingSession. 2023-11-15 09:26:41 -08:00
__init__.py
models.py mypy: Enable new error explicit-override. 2023-10-12 12:28:41 -07:00
urls.py stats: Support fetching StreamCount based on stream_id. 2023-10-16 15:10:14 -07:00