COSCUP / COSCUP-Volunteer

The COSCUP volunteer platform is an online tool that allows interested individuals to register as volunteers for the conference, and a way for volunteers to communicate with each other and with the organizers. COSCUP 志工平台是一個可以讓有興趣的人登錄成為 COSCUP 的志工,同時也提供志工彼此溝通和與大會聯繫的方式。
https://volunteer.coscup.org/
GNU Affero General Public License v3.0
67 stars 34 forks source link

Queue mail 累積發送 #199

Open toomore opened 8 months ago

toomore commented 8 months ago

mail_member_add 觸發寄送的項目後,必須 要完成寄送才會標記完成,但會因為 RabbitMQ 累積待發送項目,而造成每次檢查是否要寄送項目而重複放入 queue 序列。

https://github.com/COSCUP/COSCUP-Volunteer/blob/37a3143d998e1e06dc7fcd746e32bfe3757602a1/celery_task/task_mail_sys.py#L166

或許放寬嚴謹完成條件,將完成標記移入到 mail_member_add 中。 https://github.com/COSCUP/COSCUP-Volunteer/blob/37a3143d998e1e06dc7fcd746e32bfe3757602a1/celery_task/task_mail_sys.py#L312-L313

mail_member_deny, mail_member_waiting 亦有同樣問題。

toomore commented 8 months ago
[2024-02-27 16:55:00,041: CRITICAL/MainProcess] Unrecoverable error: PreconditionFailed(406, 'PRECONDITION_FAILED - delivery acknowledgement on channel 1 timed out. Timeout value used: 1800000 ms. This timeout value can be configured, see consumers doc guide to learn more', (0, 0), '')