S3 업로드를 포함하면 복원이 실패합니다

파일 업로드와 백업 모두에 S3를 성공적으로 사용하고 있습니다. 하지만 업로드를 “예 (업로드 포함하지 않음)” 옵션을 통해 백업에서 제외할 때만 복원이 성공합니다. 백업 시 단순히 예라고 선택하여 업로드를 포함하면 로그에 다음과 같은 오류가 발생합니다:

예외: 일부 업로드를 새 스키마로 마이그레이션할 수 없습니다. 수동으로 수정해야 합니다.
[2022-08-18 20:57:23] /var/www/discourse/lib/file_store/to_s3_migration.rb:156:in `migrate_to_s3’

향후 다른 AWS 계정으로 모든 것을 마이그레이션해야 하거나, 예측할 수 없는 재해 등이 발생할 경우를 대비해 백업에서 모든 것을 복원할 수 있도록, 백업이 완전히 독립적이며 업로드를 포함하기를 원합니다.

@serios 이 문제를 해결할 수 있었나요? 제 환경에서도 동일한 문제가 발생하고 있습니다.

어려운 문제입니다. 일부 이미지가 다른 버킷의 다른 경로에 저장되어 있어 테스트가 실패하는 것이 원인입니다. 따라서 해당 업로드 항목을 찾아서 올바른 버킷으로 옮기는 작업을 수행해야 합니다.

네… 현재 Discourse를 다른 환경으로 마이그레이션하는 작업을 진행 중입니다. 이는 앱을 다른 호스트로 이전하는 것뿐만 아니라 업로드된 파일도 다른 S3 버킷으로 옮기는 것을 포함합니다. 앱을 설정하고 새 버킷으로의 S3 업로드를 활성화하는 데는 성공했습니다. 모든 새 게시물과 업로드가 정상적으로 작동합니다. 이제 구 호스트의 백업 파일을 새 호스트로 복원하는 과정에서 이 오류가 발생하고 있습니다. 지난 2주 동안 이 문제로 고생하고 있습니다. S3 업로드를 비활성화한 후 복원을 수행하고, 다시 S3 업로드를 활성화하라는 권장 사항을 확인했습니다.

해당 작업을 진행할 준비가 되어 있으며, S3를 비활성화하고 복원한 뒤 다시 S3를 활성화하면 복원된 업로드 파일들이 자동으로 새 S3 버킷으로 전송되는지, 아니면 S3 마이그레이션 태스크를 실행해야 하는지 확인하고 싶습니다.

복원 전에 새 S3 설정을 활성화하면, 복원 시 새 버킷으로 자동으로 푸시됩니다.