# 일부 첫 게시글에 대해 메일링 리스트 모드 이메일이 전송되지 않음

**URL:** https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792
**Category:** Bug
**Tags:** email, mailing-list
**Created:** [11월 1, 2022, 9:32오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792 "2022-11-01T09:32:23Z")
**Posts on this page:** 7
**Page:** 2

<div class="post-metadata">

### Author: ![cameron-simpson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron-simpson/32/267789_2.png) [@cameron-simpson](https://meta.discourse.org/u/cameron-simpson)
#### Post date: [1월 3, 2023, 7:10오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/24 "2023-01-03T07:10:37Z")

</div>

> [@martin](#):
>
> 그렇지 않을 수도 있지만, 아마도 Redis에 저장된 Sidekiq의 백그라운드 작업에서 오류가 발생하거나 다른 문제가 생겨서 그런 것 같습니다.

제 본업에서는 Django 앱과 큐잉을 위한 Celery를 사용하고 있으며, 백엔드로 Redis를 사용 중입니다. 배포할 때마다 작업들이 “펑!” 하고 사라져 버립니다. 그리고 우리는 클라이언트의 장시간 실행되는 작업 사이에 업데이트/배포를 끼워 넣어야 합니다.

저는 이를 모두 DB 기반 큐로 교체하고 있으며, 정식 상태 머신(formal state machine)을 사용하고 있습니다. Celery는 "작업을 즉시 실행"하는 단계에만 사용하고 있습니다. 이렇게 하면 영속적 상태(persistent state)를 확보할 수 있고, Celery를 큐로 사용하지 않고 작업을 직접 실행할 수 있는 용량을 가지게 되며, 상태가 Redis에서 일시적(transient)으로 존재하지 않게 됩니다.

제가 사용하는 상태 다이어그램은 다음과 같습니다:

 ![image](https://global.discourse-cdn.com/meta/original/4X/f/8/4/f84131483187818d452c4204806bc623dc3f95ae.png)

감사합니다,  
Cameron

---

<div class="post-metadata">

### Author: ![cameron-simpson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron-simpson/32/267789_2.png) [@cameron-simpson](https://meta.discourse.org/u/cameron-simpson)
#### Post date: [1월 4, 2023, 10:55오후 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/25 "2023-01-04T22:55:35Z")

</div>

다음은 또 다른 예시입니다: [Mental block, simple question - Python Help - Discussions on Python.org](https://discuss.python.org/t/mental-block-simple-question/22411)

Aivar님의 답변(2번 게시글)은 받았지만, 원글 작성자의 답변은 받지 못했습니다.

감사합니다,  
Cameron

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [1월 5, 2023, 12:22오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/26 "2023-01-05T00:22:37Z")

</div>

Cameron, 감사합니다. 이제 로깅이 다시 활성화되었으니 이 문제에 집중하겠습니다. 지금까지는 눈에 띄는 부분이 없습니다. 오류나 실패한 백그라운드 작업을 볼 수 없고, 코드 로직을 살펴봐도 의도적으로 이메일 전송을 건너뛰는 부분이 보이지 않습니다. 해당 주제에 대해 _누구에게도_ OP에 대한 이메일이 발송되지 않은 점이 흥미롭습니다. 마치 작업이 애초에 큐에 추가조차 되지 않은 것처럼 보입니다. 계속 확인해서 알려드리겠습니다.

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [1월 9, 2023, 3:42오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/30 "2023-01-09T03:42:16Z")

</div>

@cameron-simpson 이 문제를 추가로 조사해 보았으며, 실제로는 검토 대기열 시스템과 관련된 문제입니다. 예를 들어, [Mental block, simple question - Python Help - Discussions on Python.org](https://discuss.python.org/t/mental-block-simple-question/22411) 포스트는 Akismet에 의해 "스팸"으로 판정되어 관리자 승인이 필요한 상태로 변경되었습니다. 관리자가 해당 포스트를 승인할 때, 메일링 리스트 모드 이메일이 대기열에 추가되지 않는 버그가 발생했습니다. 이 버그를 수정하면 문제가 해결될 것입니다. 앞으로 2주 안에 이 작업을 처리할 수 있을 것입니다.

---

<div class="post-metadata">

### Author: ![cameron-simpson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron-simpson/32/267789_2.png) [@cameron-simpson](https://meta.discourse.org/u/cameron-simpson)
#### Post date: [1월 9, 2023, 4:27오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/31 "2023-01-09T04:27:38Z")

</div>

훌륭해요! 고마워, 캐머런

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [1월 17, 2023, 11:16오후 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/32 "2023-01-17T23:16:48Z")

</div>

오늘 @cameron-simpson 님에게 이 수정 사항을 병합했으며, 오늘 파이썬도 배포할 예정입니다. 이후에 이 문제가 다시 발생하는 경우 알려주시면 좋겠습니다. 👍

아래 링크의 수정 사항으로 이 문제가 해결될 것으로 생각합니다:

> <https://github.com/discourse/discourse/pull/19888>
>
> This commit fixes the following issue:
> 
> \* User creates a post
> \* Akismet or so…me other thing like requiring posts to be approved puts
> the post in the review queue, deleting it
> \* Admin approves the post
> \* Email is never sent to mailing list mode subscribers
> 
> We intentionally do not enqueue this for every single post when
> recovering a topic (i.e. recovering the first post) since the topics
> could have a lot of posts with emails already sent, and we don't want
> to clog sidekiq with thousands of notify jobs.

---

<div class="post-metadata">

### Author: ![cameron-simpson](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/cameron-simpson/32/267789_2.png) [@cameron-simpson](https://meta.discourse.org/u/cameron-simpson)
#### Post date: [1월 18, 2023, 1:46오전 UTC](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792/33 "2023-01-18T01:46:09Z")

</div>

감사합니다! 계속 주의를 기울이겠습니다. - Cameron Simpson [cs@cskk.id.au](mailto:cs@cskk.id.au)

[이전 페이지](https://meta.discourse.org/t/mailing-list-mode-emails-not-being-sent-for-some-first-posts/250792.md?page=1)
