Conflito de Edição: Essa postagem foi editada por outro usuário e suas alterações não podem mais ser salvas

Se eu tentar editar uma postagem que acabei de criar, recebo o seguinte erro:

Essa postagem foi editada por outro usuário e suas alterações não podem mais ser salvas

Exemplo:

O botão “Salvar Edição” também muda seu nome para “Sobrescrever Edição”.

Isso só começou a acontecer desde que atualizei na sexta-feira para a versão “2.8.0.beta2” ( 4681c670c0 ).

Se ajudar, eu atualizo semanalmente, então esse é um problema novo que surgiu entre sexta-feira, 4 de junho de 2021, e sexta-feira, 11 de junho de 2021.

Isso acontece aqui no meta também (conforme mostra minha captura de tela).

Não consigo identificar o padrão. Não ocorre toda vez, apenas às vezes :thinking:

Vários de nossos usuários também relataram isso.

9 curtidas

5 curtidas

Parece ser exatamente o mesmo problema :+1:

1 curtida

Acabou de acontecer de novo bem aqui!

2 curtidas

Alguns de nós na equipe também vimos isso. Estamos cientes e investigando o caso.

9 curtidas

Sim, eu acabei de receber um desses hoje. @nbianca vai dar uma olhada.

3 curtidas

O tópico Error message when editing posts é uma duplicata deste aqui.

1 curtida

Ok, então isso está totalmente corrigido com FIX: Update raw and cooked immediate after edit by nbianca · Pull Request #13387 · discourse/discourse · GitHub @nbianca?

9 curtidas

Sim, todos os problemas conhecidos foram corrigidos.

8 curtidas

Fantástico, obrigado!

5 curtidas

Isso já foi mesclado e deve estar ao vivo aqui em 20 a 30 minutos.

10 curtidas

Infelizmente, isso ainda não foi corrigido. Meus usuários continuam recebendo a mensagem de edição sobrescrita e eu mesmo acabei de ver isso. Estou executando a versão 2.8.0.beta2 ( 0f9d31a85e ).

Outro ponto: ao tentar fazer o upload da primeira captura de tela no meta.discourse, recebi apenas um erro

PG::UniqueViolation: ERROR: duplicate key value violates unique constraint "uploads_pkey"

Tentar novamente funcionou.

1 curtida

Eu também ainda consigo reproduzir isso aqui no Meta.

5 curtidas

@nbianca isso foi muito difícil de isolar, mas tenho uma reprodução 100% consistente.

Faça uma postagem com o texto:

hello world 123 hello world

Certifique-se de que há um espaço no final após a última palavra world.

Digite world ESPAÇO

Em seguida, tente rapidamente editar sua postagem adicionando algumas letras ao final.

Algo na nossa lógica interna está “removendo” espaços no início e no final e, em seguida, confundindo o algoritmo que detecta que uma postagem foi alterada.

10 curtidas

Testei isso por tanto tempo, mas nunca pensei em adicionar espaços. Eu estava focado no tempo, e não no conteúdo.

O PR acima permitirá que o servidor retorne o raw e use isso para atualizar o registro da postagem.

14 curtidas

Estou impressionado que você o encontrou, considerando o que era! Até agora, a correção parece boa, obrigado a todos novamente.

1 curtida

Desculpe, não foi corrigido @nbianca. A sequência exata que @sam mencionou ainda aciona o bug. Estou executando a versão 2.8.0.beta2 ( 0c42a29dc4 ).

Aliás, acabei de receber o erro ao editar esta mesma postagem no meta.discourse.

Houve algo especial que você fez em relação a isso? Você publicou e tentou editar a postagem imediatamente ou esperou algum tempo (atualizou a página) e depois tentou editar?

Sua postagem continha espaços em branco como antes?

1 curtida

Para testar no meu próprio site, segui as instruções do Sam. Aqui, fui editar na sua tag e obtive o erro.

Hmm, tenho uma reprodução fácil no try.discourse.org .. publique, depois edite e adicione caracteres, e recebo

Essa postagem foi editada por outro usuário e suas alterações não podem mais ser salvas.

Estou um pouco preocupado com esse caminho de código se estamos quebrando tão facilmente e tendo tanta dificuldade para corrigi-lo :cry:

6 curtidas