`discourse remap` 실패

name.com에서 forum.name.com으로 포럼을 이전했는데 실패했습니다:

Error: ERROR: duplicate key value violates unique constraint “unique_post_links”
DETAIL: Key (topic_id, post_id, url)=(246, 813, http://forum.name.com) already exists.
The remap has only been partially applied due to the error above. Please re-run the script again.

그래서 다시 실행했는데(다시 실패했고) rake posts:rebake를 실행한 후 포럼을 확인해 보니 forum.forum.name.com이 몇 군데 있는 것을 발견했습니다. (그래서 discourse remap forum.forum.name.com forum.name.com과 rake posts:rebake를 실행하여 수정을 시도했는데, 일부는 성공했지만 몇 군데는 수동으로 변경해야 했습니다.)

몇 가지 질문이 있습니다:

  • discourse remap name.com forum.name.com은 게시글 콘텐츠에만 적용되나요? 그렇지 않다면, 가능한 문제를 찾기 위해 Site Settings를 살펴봐야 하나요?
  • 트랜잭션 내에서 실행되어야 하나요? (그렇다면, 제 경우처럼 실패했을 때 트랜잭션이 작동하는지 확인이 되지 않았습니다)

아니요, 전체 데이터베이스에 적용됩니다. 게시물, 사이트 설정, 테마, 업로드 파일 등 모든 것에 적용됩니다.

아, 다시 전체 오류를 살펴보니 다음 항목들이 처리된 것 같습니다:

backup_metadata=1
categories=6
email_logs=306
email_tokens=1
groups=1
incoming_domains=3
incoming_emails=3
javascript_caches=4
post_custom_fields=275
post_revisions=134
posts=441
post_search_data=50
search_logs=8
site_settings=5
stylesheet_cache=540
theme_fields=9
theme_settings=3

모든 사이트 설정을 확인해 보았는데 문제없었습니다(테마도 마찬가지고요). 그리고 위 항목들이 모두 처리된 것 같습니다. 처리되었어야 하지만 누락된 부분이 있는지 확인해 주실 수 있나요? 현재 상태로 계속 진행하는 것이 안전한지, 아니면 처음부터 다시 실행해야 하는지 의견이 궁금합니다.

또한 Discourse에서 duplicate key value violates unique constraint 오류가 점점 더 자주 발생하는 이유가 무엇일까요? 관련 주제로 몇 가지를 확인해 보았는데, 제 경우에도 이번이 세 번째로 같은 문제를 겪는 것 같습니다.

출력만으로는 알 수 없습니다. 우리는 변경 사항이 있는 테이블만 출력하기 때문입니다. 오류 때문에 목록에 없는 것인지, 아니면 (목록에 없는) 테이블에 name.com 인스턴스가 없어서 그런지 알 수 있는 방법이 없습니다.

안타깝게도 그것은 제 전문 분야를 벗어납니다.

조슈아, 감사합니다.

이 숫자들이 무엇을 의미하는지 혹시 아는 게 있나요? 변경된 항목의 수인가요?

지금 권장되는 진행 방법은 무엇인가요? 고유 제약 조건(unique constraint) 오류를 수정한 뒤 되돌리기(forum.name.com에서 name.com으로, 다시 원래대로)를 하는 것인가요, 아니면 다른 조치를 취해야 하나요?

수정: 완료

앱과 Rails 콘솔에 접속하여 해당 TopicLink를 삭제한 후, forum.name.com에서 name.com으로, 다시 원래대로 되돌렸습니다.

backup_metadata=1
categories=6
email_logs=318
email_tokens=2
groups=1
incoming_domains=3
incoming_emails=3
javascript_caches=4
post_custom_fields=277
post_revisions=140
posts=444
post_search_data=51
search_logs=10
site_settings=5
stylesheet_cache=564
theme_fields=9
theme_settings=3
topic_links=281
topics=30
topic_search_data=8
translation_overrides=1
uploads=54
user_auth_token_logs=48
user_emails=2
user_histories=189
Done