I, [2023-01-18T08:05:48.701709 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all'
I, [2023-01-18T08:05:52.431210 #1] INFO -- :
I, [2023-01-18T08:05:52.431807 #1] INFO -- : > cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
2023-01-18 08:05:59.081 UTC [1166] discourse@discourse ERROR: could not create unique index "index_tags_on_name_ccnew_ccnew_ccnew5"
2023-01-18 08:05:59.081 UTC [1166] discourse@discourse DETAIL: Key (name)=(vuejs) is duplicated.
2023-01-18 08:05:59.081 UTC [1166] discourse@discourse STATEMENT: REINDEX INDEX CONCURRENTLY index_tags_on_name_ccnew_ccnew
rake aborted!
StandardError: An error has occurred, all later migrations canceled:
PG::UniqueViolation: ERROR: could not create unique index "index_tags_on_name_ccnew_ccnew_ccnew5"
DETAIL: Key (name)=(vuejs) is duplicated.
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rack-mini-profiler-3.0.0/lib/patches/db/pg.rb:110:in `exec'
/var/www/discourse/vendor/bundle/ruby/3.1.0/gems/rack-mini-profiler-3.0.0/lib/patches/db/pg.rb:110:in `async_exec'
포럼에는 유사한 문제가 있는 다른 토픽들(1, 2, 3)이 있지만, 컨테이너에 진입하려고 하면 다음과 같은 메시지가 표시됩니다:
/var/discourse# ./launcher enter app
x86_64 arch detected.
Error: No such container: app
버그 제보해 주셔서 감사합니다. 이 문제를 확인해 보겠습니다. 다만, 데이터베이스에 인덱스 관련 문제가 있는 것으로 보이며, 최근 마이그레이션에서 이를 수정하려고 시도했지만, 일부 문제는 사람의 개입 없이는 해결할 수 없습니다.
실패하는 마이그레이션을 도입한 커밋은 아마도 이 커밋일 것입니다:
app.yml 파일을 편집하여 params 아래에 있는 version 키를 설정하고, Discourse 인스턴스를 이전 버전인 커밋 690e2f15ab9549486aaa6750e1093c1336bf17f2로 고정해 보실 수 있습니다. 해당 키가 주석 처리되어 있지 않도록 확인하세요!
그렇게 하면 모든 것이 정상적으로 시작되고 중복된 vuejs 태그를 제거할 수 있어야 합니다. 하지만 중복된 태그가 사용 중이라면 원치 않는 부작용이 발생할 수 있습니다. 더 나은 해결책을 찾기 위해 노력하겠지만, 그때까지는 이 방법으로 작동할 것입니다.