FileStore::ToS3MigrationError: 182 из 21512 загрузок не были перенесены в S3. Перенос в S3 для базы данных ‘default’ не удался.>
далее следует трассировка стека из ‘raise_or_log’, ‘migration_successful?’, ‘migrate_to_s3’, ‘migrate’, ‘block in migrate_to_s3_all_sites’
Я столкнулся с этими ошибками дважды при выполнении задачи uploads:migrate_to_s3. Около 1% файлов не были успешно перенесены, что привело к повреждению вложений на сайте после повторной обработки (rebake). Все они, похоже, относятся к более старым файлам, созданным в первые несколько месяцев после запуска моего экземпляра Discourse.
При изучении бакета S3 выяснилось, что файлы действительно были успешно загружены в S3, но после повторной обработки ссылки на них были установлены неверно.
Повторный запуск миграции (перед следующей повторной обработкой) по какой-то причине исправил проблему. Ошибка всё ещё возникает во время задачи migrate_to_s3.
Однако, если я снова выполню повторную обработку, ссылки на вложения снова ломаются.
Я не считаю эти сообщения ошибками, но приведу вывод, полученный во время повторной обработки:
/var/www/discourse/lib/file_store/base_store.rb:6: warning: already initialized constant FileStore::BaseStore::UPLOAD_PATH_REGEX
/var/www/discourse/lib/file_store/base_store.rb:6: warning: previously definition of UPLOAD_PATH_REGEX was here
/var/www/discourse/lib/file_store/base_store.rb:7: warning: already initialized constant FileStore::BaseStore::OPTIMIZED_IMAGE_PATH_REGEX
/var/www/discourse/lib/file_store/base_store.rb:7: warning: previous definition of OPTIMIZED_IMAGE_PATH_REGEX was here
Выполнение rake posts:missing_uploads или PostCustomField.where(name: Post::MISSING_UPLOADS) не выявляет никаких проблем, поэтому, похоже, это не связано с данной ситуацией.