Algumas imagens vinculadas não estão sendo exibidas ou aparecem como quebradas

Estou migrando uma grande quantidade de conteúdo, cerca de 15 mil notícias, para o Discourse via API, e esses tópicos contêm links para imagens. As imagens foram apenas carregadas no armazenamento blob e são totalmente acessíveis publicamente.

A maioria dos tópicos exibe as imagens corretamente, que são baixadas por hotlink e carregadas no Discourse como esperado. Algumas, no entanto, não passam do ponto de serem exibidas apenas como links no tópico ou acabam aparecendo como imagens quebradas por algum motivo.

Ou seja:

Apenas permanecendo como links:

Ficando quebradas:

No caso das quebradas, o tópico aparece assim ao editar:

A configuração é:
Instalação limpa do Discourse apenas para testar a migração
Armazenamento S3 das imagens

Não tive problemas ao criar posts como usuário e fazer uploads; parece ocorrer apenas ao migrar posts via API, ou seja, em massa e em rápida sucessão (estou usando o parâmetro skip_validations=true). Até agora, migrei no máximo 1.000 tópicos antes de limpar tudo e começar novamente.

Alguma ideia do que possa estar causando isso? Ou alguma dica sobre como diagnosticar? Todos os trabalhos Hotlink do Sidekiq parecem ser agendados e executados como esperado.

rake posts:rebake não ajuda

Que tal a opção de HTML reconstruído com a pequena chave inglesa de administração?

image

Seu arquivo tem uma extensão dupla - .jpeg.jpg - isso é verdade para todos os arquivos que foram rejeitados?

Alguns arquivos com extensão dupla foram processados com sucesso?

Obrigado, Robert. Isso está funcionando para os primeiros que testei. Está voltando ao zero, ou seja, renderizando a imagem com link externo e, em seguida, baixando/carregando-a.

Vou verificar se isso pode ser automatizado, embora não resolva a causa raiz do motivo pelo qual elas falham desde o início.

Não, as imagens com extensão dupla são minoria e não representam todas as falhas. A opção Reconstruir HTML também resolve esses casos.

Isso é fantástico e parabéns, :partying_face: Felizmente, aprendi isso com outras pessoas prestativas aqui quando tive problemas semelhantes, e estou feliz por poder repassar isso para você :sunglasses:

Ok, corrigi todas as postagens migradas via API usando /posts/{num}/rebake. Estranhamente, o comando rake posts:rebake no contêiner não funcionou.

Depois de automatizar a chamada à API de rebake, descobri que há uma taxa de falha no upload de imagens de cerca de 80%. Isso é bastante absurdo.

No final, isso acabou não sendo confiável: funcionou para algumas postagens, mas não para todas. Vou tentar fazer o upload das imagens novamente. Já tive problemas com isso antes, em que as requisições ficavam travadas. Não tenho certeza se tentei usar o parâmetro skip_validations nessas requisições.

Há algumas sugestões neste post que podem ser úteis para corrigir imagens quebradas: Rebake with rails command or rake task doesn't work, but rebuilding HTML does. Why? - #12 by RGJ.