그룹으로 메시지 전송 오류

그룹에 새 메시지를 보내면 오류 메시지가 발생합니다:


(이 메시지의 수신자 중 한 명을 찾을 수 없음)

그룹 "admins"에 메시지를 보내는 것은 정상적으로 작동합니다(저는 관리자 중 한 명입니다).

현재 2.5.0.beta5 ( 7bc496070f ) 버전을 사용하고 있습니다.

업데이트:
방금 테스트를 해보니, 대문자를 포함하는 모든 그룹 이름(우리 그룹 이름 대부분이 대문자를 포함합니다)이 더 이상 메시지 수신자로 작동하지 않는 것을 확인했습니다.
즉, "Testuser"는 더 이상 작동하지 않지만, 그룹 이름을 "testuser"로 변경하면 작동합니다.
다시 "Testuser"로 변경하면 다시 오류가 표시됩니다.
따라서 현재 릴리스 버전에서 대문자가 포함된 그룹 이름으로 전송할 때 문제가 있는 것으로 보입니다.

오류 로그에는 아래 오류가 여러 번 최신 오류로 표시되지만, 이 오류가 위의 문제와 관련이 있는지 확실하지 않습니다(아마도 이 오류는 별개의 문제일 것입니다).

Message (39 copies reported)

Job exception: ERROR:  syntax error at or near "WHERE"
LINE 1: ...E groups SET flair_url = NULL, flair_upload_id =  WHERE id =...
                                                             ^



Backtrace

/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rack-mini-profiler-2.0.2/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rack-mini-profiler-2.0.2/lib/patches/db/pg.rb:110:in `async_exec'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mini_sql-0.2.5/lib/mini_sql/postgres/connection.rb:135:in `run'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/mini_sql-0.2.5/lib/mini_sql/postgres/connection.rb:107:in `exec'
/var/www/discourse/app/jobs/onceoff/migrate_group_flair_images.rb:80:in `block in execute_onceoff'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.3/lib/active_record/relation/delegation.rb:87:in `each'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/activerecord-6.0.3/lib/active_record/relation/delegation.rb:87:in `each'
/var/www/discourse/app/jobs/onceoff/migrate_group_flair_images.rb:18:in `execute_onceoff'
/var/www/discourse/app/jobs/onceoff/onceoff.rb:25:in `execute'
/var/www/discourse/app/jobs/base.rb:232:in `block (2 levels) in perform'
3개의 좋아요

그룹에 메시지를 보낼 수 있는 권한이 올바르게 설정된 것이 확실하다면, /g/에 표시된 그룹 이름과 메시지에 포함된 그룹 이름을 확인해 줄 수 있을까요?

대소문자 구별 문제 때문에 이 오류가 발생한 사례가 몇 번 있었습니다.

https://meta.discourse.org/t/case-sensitivity-in-links-to-groupname/147596/8

1개의 좋아요

음, 이 그룹에는 매일 수많은 메시지가 전송되었는데, beta4에서는 여전히 잘 작동했습니다.
권한은 변경되지 않았으며, 그룹 멤버와 관리자는 해당 그룹으로 메시지를 보낼 수 있고, 저는 해당 그룹과 관리자 그룹 모두에 속해 있습니다.
오늘 아침에 beta5로 업그레이드한 이후부터 문제가 발생했습니다.

메시지 속 그룹 이름은 그룹 이름과 동일하며, 즉 "Team_CM_MP-Mod"입니다.

2개의 좋아요

그것이 그룹 name인지, 그룹 full name인지, 아니면 둘 다인지요?

1개의 좋아요

이것은 전체 이름이 아니라 그룹 이름입니다.
테스트를 해보았는데, 대문자를 포함하는 모든 그룹 이름(우리 그룹의 거의 모든 이름에 대문자가 포함되어 있습니다)이 더 이상 메시지 수신자로 작동하지 않습니다.
즉, "Testuser"는 더 이상 작동하지 않지만, 그룹 이름을 "testuser"로 변경하면 작동합니다.
다시 "Testuser"로 변경하면 다시 오류가 발생합니다.
따라서 현재 릴리스에서 대문자가 포함된 그룹 이름으로 메시지를 보내는 기능이 제대로 작동하지 않는 문제입니다.

2개의 좋아요

네, 그러면 위에서 언급한 내용이 확인됩니다. 이 커밋과 관련이 있는 것 같습니다:

@techAPJ 님을 부릅니다!

4개의 좋아요

이 문제를 보고해 주셔서 감사합니다!

이 커밋으로 해당 문제가 수정되어야 합니다:

7개의 좋아요

최신 Discourse 버전을 설치했는데, 이제 정상적으로 작동합니다.
수정해 주셔서 감사합니다.

3개의 좋아요

저희도 동일한 문제를 겪고 있습니다. Discourse를 최신 베타 버전으로 업데이트해야 할까요?

기록을 위해, 영어로 표시되는 메시지는 “One of the users you are sending this message to could not be found.” 입니다.

2개의 좋아요

음, 적어도 우리 설치 환경에서는 몇 시간 전 최신 베타 버전으로 업데이트한 후 문제가 해결되었으니, 당신의 문제도 해결되었을 거라고 생각합니다.

2개의 좋아요

감사합니다! 이렇게 여쭤보는 이유는 오늘 아침(약 12시간 전)에 포럼을 업데이트했는데, 바로 그 시점에 문제가 발생하기 시작했기 때문입니다. GitHub에 링크된 수정 사항은 3일 전에 커밋되었으므로, 우리는 최신 버전을 사용 중인 것으로 보입니다… 혹시 현재 실행 중인 버전을 확인해 주실 수 있을까요?

1개의 좋아요

2시간 30분 전에 업데이트를 진행했는데, 해당 수정 사항은 9시간 전에만 커밋되었습니다 (방금 GitHub에서 확인했습니다).
현재 실행 중인 버전은 2.5.0.beta5 subversion c8370b9c78입니다.

3개의 좋아요

맞아요 - 감사합니다!

3개의 좋아요

이 주제는 26시간 후 자동으로 닫혔습니다. 더 이상 새 답글을 작성할 수 없습니다.