zulip/zerver
Alex Vandiver 5a9b6feb18 tornado: Retry POST requests from Django to Tornado.
While urllib3 retries all connection errors, it only retries a subset
of read errors, since not all requests are safe to retry if they are
not idempotent, and the far side may have already processed them once.
By default, the only methods that are urllib3 retries read errors on
are GET, TRACE, DELETE, OPTIONS, HEAD, and PUT.  However, all of the
requests into Tornado from Django are POST requests, which limits the
effectiveness of bb754e0902.

POST requests to `/api/v1/events/internal` are safe to retry; at worst,
they will result in another event queue, which is low cost and will be
GC'd in short order.

POST requests to `/notify_tornado` are _not_ safe to retry, but this
codepath is only used if USING_RABBITMQ is False, which only occurs
during testing.

Enable retries for read errors during all POSTs to Tornado, to better
handle Tornado restarts without 500's.
2020-09-17 16:50:36 -07:00
..
data_import import_util: Migrate from run_parallel to multiprocessing. 2020-09-14 16:22:23 -07:00
lib markdown: Tweak data-code-language testing and comments. 2020-09-15 12:30:57 -07:00
management compilemessages: Switch to canonical override_language(). 2020-09-14 22:16:09 -07:00
migrations migrations: Fix 0301 to replace a Python loop with SQL. 2020-09-13 20:59:09 -07:00
openapi api docs: Removing order dependency of deactivate user test. 2020-09-14 22:31:40 -07:00
templatetags python: Replace list literal concatenation with * unpacking. 2020-09-02 11:15:41 -07:00
tests markdown: Tweak data-code-language testing and comments. 2020-09-15 12:30:57 -07:00
tornado tornado: Retry POST requests from Django to Tornado. 2020-09-17 16:50:36 -07:00
views move_topic_to_stream: Allow moving to/between/from private streams. 2020-09-14 15:00:55 -07:00
webhooks webhooks/gitlab: Add fixture for MR opened with multiple assignees. 2020-09-13 20:54:14 -07:00
worker queue: Extract get_remaining_queue_size method. 2020-09-11 15:51:07 -07:00
__init__.py
apps.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
context_processors.py exceptions: Raise InvalidSubdomainError when realm is invalid. 2020-09-03 10:45:14 -07:00
decorator.py webhooks: Move the extra logging information into a formatter. 2020-09-11 16:43:29 -07:00
filters.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
forms.py middleware: Make HostDomain into a process_request, not process_response. 2020-08-11 10:37:55 -07:00
logging_handlers.py models: Force the translated role into a translated string. 2020-09-03 17:26:54 -07:00
middleware.py middleware: Move locale-setting before domain checking. 2020-09-14 22:16:09 -07:00
models.py migrations: Add case-insensitive unique index on realm and stream name. 2020-09-13 15:36:43 -07:00
signals.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00