Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replied-to messages which are loaded aren't rendered after loading completes #231

Closed
TheBlueMatt opened this issue Jan 6, 2022 · 10 comments
Milestone

Comments

@TheBlueMatt
Copy link
Contributor

When a channel is opened where the latest message replies to a message which isn't cached and has to be loaded, the box with the replied-to message is (obviously) a grey box. This is fine, except that even after the replied-to message loads and is rendered, the replied-to message box remains grey and isn't re-rendered. Clicking into a different channel and back makes it render just fine. Cinny v1.6.1 on Firefox.

@ajbura
Copy link
Member

ajbura commented Jan 6, 2022

Is this happen with all replies all times or sometimes?

@TheBlueMatt
Copy link
Contributor Author

I believe all-the-time, though I haven't done any kind of exhaustive testing - I've at least seen it in unencrypted rooms, so maybe its specific to that.

@kfiven
Copy link
Collaborator

kfiven commented Jan 6, 2022

It'd be great if we can have steps to reproduce this behaviour otherwise there's no way to know what is going wrong.

@TheBlueMatt
Copy link
Contributor Author

I believe its basically "dont open a channel for a few days so that no recent messages are in cache, have the last few messages in a channel be replies to things from 10 messages up, load the channel in cinny" at that point cinny will load the most recent few messages on start, but not the messages 10-messages-back which the latest message(s) were a reply to, and will fail to re-render the reply-to blocks after the previous messages are loaded.

@ajbura
Copy link
Member

ajbura commented Jan 17, 2022

Forget to ask earlier, what’s your homeserver @TheBlueMatt ?

@TheBlueMatt
Copy link
Contributor Author

The homeserver is a self-hosted one. Indeed, when I was seeing this issue regularly it had incredibly slow IOPS (read: microSD card for Postgres). I've since had a chance to replace the backing storage and the issue seems to have largely resolved. I assume mostly whatever race condition leads to this is rare enough on reasonably-performant homeservers that it may not be worth worrying about.

@ajbura
Copy link
Member

ajbura commented Jan 17, 2022

I asked about homeserver because I faced this on a conduit homeserver and thought maybe it’s related to conduit.

Anyways if you feel this is related to homeserver speed then feel free to close it as we can’t do much in that direction.

@TheBlueMatt
Copy link
Contributor Author

I asked about homeserver because I faced this on a conduit homeserver and thought maybe it’s related to conduit.

Ah, sorry, no, this was on synapse.

Anyways if you feel this is related to homeserver speed then feel free to close it as we can’t do much in that direction.

It wasn't timeouts, though, so its still a bug, just a rare one that seems likely to be some kind of race condition. IOW it seems low priority, though users on incredibly-slow-IOPS homeservers may see it somewhat regularly.

@ajbura
Copy link
Member

ajbura commented Jan 26, 2022

Steps to reproduce:

  • Send a message.
  • Immediately reply
  • Reply link fails and wrong event is sent in m.in_relates_to

@TheBlueMatt You did something like that where those replies failed?

@TheBlueMatt
Copy link
Contributor Author

Yes. I've started seeing it again somewhat, so its not just a synapse-being-slow issue, haven't tried with 1.7 yet, however.

ajbura added a commit that referenced this issue Feb 5, 2022
@ajbura ajbura added this to the v1.8.0 milestone Feb 5, 2022
@kfiven kfiven closed this as completed Mar 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants