16551件のアップロードのうち1件がS3に移行されていません。'default'データベースのS3移行に失敗しました

,

これで問題が解決しました!フォーラムのArturさんの多大な助けを借りて、次のように解決しました。

to_s3_migration.rbで、これを次のように変更しました。

count = Upload.by_users.where("url NOT LIKE '#{base_url}%'").count
      if count > 0
        error_message =
          "#{count} of #{Upload.count} uploads are not migrated to S3. #{failure_message}"
        raise_or_log(error_message, should_raise)
        success = false
      end

次のように変更しました。

count = Upload.by_users.where("url NOT LIKE '#{base_url}%'").count
      if count > 0
        failed_uploads = Upload.by_users.where("url NOT LIKE '#{base_url}%'")
        failed_ids = failed_uploads.map(&:id)
        failed_id_list = failed_ids.join(", ")
        error_message =
          "#{count} of #{Upload.count} uploads are not migrated to S3. \n List of failed IDs: \n #{failed_id_list}; #{failure_message}"
        raise_or_log(error_message, should_raise)
        success = false
      end

その後、railsコンソールで問題のあるアップロードを削除しました。現在、次のような問題が発生しています。

FileStore::ToS3MigrationError: 3 posts are not remapped to new S3 upload URL. S3 migration failed for db 'default'.

しかし、より大きな問題に遭遇したようです。コンパイル後のアセットがS3バケットにアップロードされていません。

明らかにアセットフォルダがあるはずですが、ありません。これがCDNを前面に配置できない原因ですが、これは別のトピックの問題でしょうか?

「いいね!」 4

変更されたファイルについて:

count = Post.where("cooked LIKE '%#{cdn_path}%'").count
      if count > 0
        failed_posts = Post.where("cooked LIKE '%#{cdn_path}%'")
        id_list = failed_posts.map(&:id).join(", ")
        error_message = "#{count} 件の投稿が新しいS3アップロードURLにリマップされていません。\n失敗した投稿のリスト:\n#{id_list}\n#{failure_message}"
        raise_or_log(error_message, should_raise)
        success = false
      end

から

count = Post.where("cooked LIKE '%#{cdn_path}%'").count
      if count > 0
        failed_posts = Post.where("cooked LIKE '%#{cdn_path}%'")
        failed_ids = failed_posts.map(&:id).join(", ")
        failed_id_list = failed_ids.join(", ")
        error_message = "#{count} 件の投稿が新しいS3アップロードURLにリマップされていません。\n失敗した投稿のリスト:\n#{failed_id_list}\n#{failure_message}"
        raise_or_log(error_message, should_raise)
        success = false
      end

IDを3つ取得し、https://example.com/p/ID にアクセスしてUIから削除しました。その後、スムーズに進みました!

「いいね!」 3

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.