이 문제가 발생하는 원인이 무엇인지 아시는 분 계신가요? 이전에는 이런 일이 한 번도 없었습니다. 어떤 소스에서 설치하려고 해도 같은 문제가 발생합니다.
하나를 추가해 본 후 /logs를 확인해 주시겠어요?
하이재킹된 응답을 올바르게 처리하지 못함: ActiveRecord::RecordNotUnique: PG::UniqueViolation: ERROR: 고유 제약 조건 “theme_field_unique_index” 위반으로 인한 중복 키 값
DETAIL: Key (theme_id, target_id, type_id, name)=(50, 5, 1, common/fkb-c-alternative-voting-category) 이(가) 이미 존재합니다.
아, 이건 제가 이미 보고한 문제와 비슷해 보이네요:
다만, 당신의 경우에는 제 경우처럼 부모-자식 링크가 아니라, 사용하려는 테마 ID(50)가 이미 사용 중인 것으로 보입니다.
500 오류가 발생하기 전에 어떤 이유로든 실패한 테마를 이전에 추가해 보셨나요?
그럼요, 제가 원래 사용하던 테마는 GH 저장소에 있었습니다. GH에서 해당 계정에 문제가 생겨서 다른 계정으로 옮긴 후 업로드를 시도했는데, 그 다음에 이 에러가 발생했습니다.
그러면 이미 해당 인스턴스에 테마가 적용되어 있는 건가요? 그렇다면 기존 테마를 제거하면 도움이 될까요?
음, 이 테마가 설치되지 않으면 아예 테마가 없게 될까 봐 삭제하기가 두렵네요, 하하.
하, 아니요, 완전히 이해했어요. 확인 차 현재 테마 이름을 변경한 뒤 새 테마를 다시 가져와 보시겠어요? (이로 인해 달라지는 건 없을 거라고 생각하지만, 해보는 데는 나쁘지 않으니까요)
이미 해봤어요, 하하
나보다 더 잘 아는 사람에게 넘기기 전에 마지막으로 한 가지 아이디어를 물어보겠습니다. 테마의 about.json에서 테마 이름을 변경해 볼 수 있을까요?
네, 저도 같은 문제입니다. 정말 이상하네요. 1월에 겪으셨던 500 에러 문제가 그때 해결되지 않았던 건가요? 아니면 테마 ID를 그냥 변경할 수 있는 방법이 있을까요? 저는 Discourse가 가져오기 시점에 자동으로 그렇게 처리해서 이런 일이 일어나지 않을 거라고 생각했는데 말이죠.
아, 잠깐. 에러 로그를 보니 업로드를 시도할 때마다 실패할 때마다 theme_id 부분의 숫자가 1씩 증가하고 있네요. 음…
테마에 연결된 테마 컴포넌트가 있나요? (이 시점에서는 뭔가 작동하길 바라며 이것저것 시도하고 있는 중이니, 디버깅 방법을 실제로 아는 분을 기다려도 괜찮습니다)
네, 몇 개 정도입니다. 그런데 그런 상황에서 다른 GitHub 계정에서 테마를 가져오는 것만으로 정말 큰 차이가 있을까요?
테마에 TC가 하나만 있는 상태에서 다시 추가하려고 하면 문제가 생기는 건지 궁금합니다. 업로드하려는 테마에서 TC를 제거해 보시겠어요?
모두 삭제하고 다시 시도해 봤습니다. 같은 문제네요. 진짜 짜증나네요.
아마 그냥 테마를 삭제해야 할 것 같습니다. 백업은 가지고 있지만, 다시 가져올 수 있을지 정말 모를 것 같아요.
이상하게도, 어제 받은 내보내기 .zip 파일을 업로드하면 정상적으로 가져오는데… 어제는 이 테마에서 정말 많은 부분을 수정했어요. 그런데 정상적으로 가져와지는 그 .zip 파일을 압축 해제해서, 수정된 파일들을 복사해 넣고 다시 .zip으로 압축해서 업로드하면 500 오류가 나요.
수정: 테마를 삭제하고 가장 최신 버전의 내보내기 파일을 다시 가져와 봤는데, 그래도 안 됐어요… 적어도 어제의 백업이 있어서 다행입니다. 이제 어떻게 해야 할까요?..
음… 잠재적인 단서가 될 수 있겠네요. 하나씩 변경해 보면서 무엇이 문제를 일으키는지 확인해 보세요.
이 문제는 여기서 해결된 것 같습니다 ![]()