mirror of https://github.com/zulip/zulip.git
783a77c532
Several of our queues are capable of doing work that includes rendering markdown (outgoing_webhook, embedded_bots, embed_links, and email_mirror). As a result, it's essential that these don't cache per-request data (specifically, realm filters) longer than they should, making editing/deleting linkifiers potentially use old settings until the relevant process was restarted. Flushing these caches is extremely cheap (just clearing two dictionaries) and thus is reasonable to do after every queue event, rather than trying to do it only the ~1/3 of queues that specifically do markdown processing. We do the same in our middleware for reset_queries. It's not worth writing a test for this because it's very difficult to create the test setup situation for this bug with a single test worker process; one needs to edit the linkifier configuration in a different process than the one sending the message in order to see the bug. This was a much larger visible bug on Zulip 2.1.x, where the presence of the message_sender queue meant that this would apply to messages sent via a browser. Fixes #14095. |
||
---|---|---|
.. | ||
__init__.py | ||
queue_processors.py |