Na versão mais recente do Discourse, mas esse bug é conhecido por mim há algumas semanas.
As mensagens de chat às vezes (não com frequência, mas talvez 20% das vezes) podem aparecer na ordem errada, o que significa que o envio de uma nova mensagem pode aparecer acima das mensagens anteriores.
Alguém já passou por isso? Não tenho certeza de como reproduzir.
Mas como nenhum outro fórum está passando por isso (caso contrário, haveria vários tópicos aqui) e tenho a sensação de que os tópicos não são tão populares quanto se pensa e a ordem alterada soa como uma falha na criação de tópicos, foi fácil fazer essa suposição.
Ou os carimbos de data/hora falham.
Mas em breve virá alguém com melhores habilidades.
Usamos o chat diariamente internamente, mas não tivemos relatos disso.
Quantas pessoas isso está afetando no seu fórum? Você poderia compartilhar informações adicionais sobre sua(s) configuração(ões)? por exemplo, celular ou desktop, velocidade da rede, navegador, número de canais de chat abertos, etc. Geralmente acontece após x minutos? Precisaremos de mais informações aqui, caso contrário, não poderemos resolver isso também.
Celulares e tablets - particularmente, vimos apenas relatos de usuários com iPhones e iPads
Velocidade da rede - não tenho muita certeza. O que estamos procurando especificamente?
Safari como navegador
Número de canais de chat abertos - estamos falando de quantos eles têm (incluindo DM)? porque, no meu entendimento, você só pode ter um “aberto” por vez?
Quanto a se acontece após X minutos - verificaremos e atualizaremos aqui.
Um caso de uso interessante aqui com 50 mil usuários. (cc @davidb) Acho que isso pode ser uma pista do porquê você está vendo coisas que nós não estamos.
Se você se sentir confortável em acessar o console, pode haver algo que você possa fazer com nosso Chat::MessageDestroyer. Mas atualmente não há um recurso de “manter apenas as últimas 10 mil mensagens neste canal”, se é isso que você está pensando.
Estou apenas supondo que há uma sobrecarga de banco de dados ou algo assim, ou que há um bloqueio de IP e é por isso que às vezes os usuários não veem outras mensagens até que atualizem?
Este código pode ser útil para ver como o MessageDestroyer é usado para excluir mensagens diretas após os dias de retenção do chat:
Em teoria, você poderia selecionar qualquer mensagem com um id menor que um determinado número e passá-las para serem destruídas (veja o método destroy_in_batches).
Sim, o que o David disse Em geral, não tivemos solicitações para excluir mensagens de chat de uma maneira específica, além de um período de retenção.
Se você tiver uma ideia específica em mente e estiver de acordo em fazê-la via console, pode nos informar e forneceremos algo que seja seguro para executar.
Tenho algumas atualizações -
isso não foi resolvido, mas parece que o problema é que, às vezes, provavelmente em horários de pico, as mensagens de chat não são buscadas. Assim, o usuário vê como se nenhuma nova mensagem tivesse sido enviada e, depois de um tempo ou ao atualizar, todas aparecem.
Este é um canal de chat com muitos usuários (mais de 100 mil), embora a maioria não esteja ativa.