zulip/zilencer
Alex Vandiver c6ae3e7242 zilencer: Lock the RemoteZulipServer row when inserting data.
This does not ensure that we do not mix data from multiple servers
sharing a UUID -- if one has more `RemoteRealmCount` rows,
and the other has more `RemoteInstalltionCount` rows, the end result
will still be some rows from each server, across the two tables.

It does ensure that we will not alternate rows between two servers
if both requests are processed at the same time.

It also causes submissions to be all-or-nothing in the event of
integrity errors.  This is not necessarily beneficial, as forward
progress is generally useful -- but the integrity errors are resolved
in the subsequent commit.
2023-11-21 11:44:55 -08:00
..
lib counts: Add function compute_max_monthly_messages for remote servers. 2023-11-08 09:45:49 -08:00
management populate_billing_realms: Increase price_per_license. 2023-11-13 10:35:39 -08:00
migrations zilencer: Apply partial unique constraints for null subgroups. 2023-11-21 11:44:55 -08:00
README.md docs: Format Markdown with Prettier. 2021-09-08 12:06:24 -07:00
__init__.py
auth.py auth: Allow easier bouncer testing in dev env. 2023-11-17 18:32:49 -08:00
models.py zilencer: Apply partial unique constraints for null subgroups. 2023-11-21 11:44:55 -08:00
urls.py push_notifs: Add endpoint for sending a test notification. 2023-10-12 18:15:00 -07:00
views.py zilencer: Lock the RemoteZulipServer row when inserting data. 2023-11-21 11:44:55 -08:00

README.md

ZILENCER -- The Zulip license manager

This app is the place for storing state about various deployments of Zulip that exist in the world.