# Digest Email 플러그인이 업그레이드 후 DistributedMutex.synchronize에서 오류 발생

**URL:** https://meta.discourse.org/t/digest-email-plugin-broke-in-distributedmutex-synchronize-on-upgrade/238182
**Category:** Support
**Tags:** activity-summary
**Created:** [9월 5, 2022, 10:24오후 UTC](https://meta.discourse.org/t/digest-email-plugin-broke-in-distributedmutex-synchronize-on-upgrade/238182 "2022-09-05T22:24:26Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Mark\_Schmucker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/mark_schmucker/32/124810_2.png) [@Mark\_Schmucker](https://meta.discourse.org/u/Mark_Schmucker)
#### Post date: [9월 5, 2022, 10:24오후 UTC](https://meta.discourse.org/t/digest-email-plugin-broke-in-distributedmutex-synchronize-on-upgrade/238182/1 "2022-09-05T22:24:26Z")

</div>

2.9.0 beta 7에서 beta 9로 업그레이드했을 때 깨진 커스텀 다이제스트 이메일 플러그인이 있습니다. Discourse가 커스텀 플러그인을 지원하지 않는다는 점은 알고 있지만, #marketplace로 넘어가기 전에 제가 할 수 있는 일이 있는지 힌트를 주실 수 있을까요?

> **에러 로그**
>
> ```plaintext
> /var/www/discourse/plugins/discourse-506investor-digest-plugin/plugin.rb:27:in `block in execute'
> /var/www/discourse/lib/distributed_mutex.rb:57:in `block in synchronize'
> /var/www/discourse/lib/distributed_mutex.rb:53:in `synchronize'
> /var/www/discourse/lib/distributed_mutex.rb:53:in `synchronize'
> /var/www/discourse/lib/distributed_mutex.rb:38:in `synchronize'
> /var/www/discourse/plugins/discourse-506investor-digest-plugin/plugin.rb:12:in `execute'
> /var/www/discourse/app/jobs/base.rb:237:in `block (2 levels) in perform'
> rails_multisite-4.0.1/lib/rails_multisite/connection_management.rb:80:in `with_connection'
> /var/www/discourse/app/jobs/base.rb:226:in `block in perform'
> /var/www/discourse/app/jobs/base.rb:222:in `each'
> /var/www/discourse/app/jobs/base.rb:222:in `perform'
> /var/www/discourse/app/jobs/base.rb:284:in `perform'
> mini_scheduler-0.14.0/lib/mini_scheduler/manager.rb:93:in `process_queue'
> mini_scheduler-0.14.0/lib/mini_scheduler/manager.rb:37:in `block (2 levels) in initialize'
> 
> ```

> **관련 코드**
>
> ```plaintext
> after_initialize {
> class ::Jobs::EnqueueDigestEmails
> def execute(args)
> return if SiteSetting.disable_digest_emails? || SiteSetting.private_email?
> 
> DistributedMutex.synchronize("custom_digest", validity: 180.minutes) { # <<<<< 문제 발생 라인 12
> users = User.where(id: target_user_ids)
> return if users.blank?
>         
> connection = CustomDigest.create_connection
> 
> ```

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [9월 5, 2022, 11:05오후 UTC](https://meta.discourse.org/t/digest-email-plugin-broke-in-distributedmutex-synchronize-on-upgrade/238182/2 "2022-09-05T23:05:14Z")

</div>

코어에서 오버라이드하고 있는 작업을 확인하고, blame을 통해 최근 해당 부분에 변경 사항이 있었는지 살펴보세요. 제가 먼저 확인할 부분은 바로 그것입니다.
