Closed ara4n closed 2 months ago
It immediately hard-failed (red circle), rather than queuing.
Sending a message requires doing a /members request, and we try to avoid running more than one at the same time; so these requests are deduplicated; the first one failed, causing the second (waiting) to fail and be flagged as unrecoverable. There's a real bug there, and we should likely flag this specific kind of error as recoverable too.
That's the one new bug from looking at this rageshake, the rest has been fixed in the SDK, as far as I can tell:
Later, going back into the room when on good connectivity, the message is still there... except now it's in queued state (hollow-circle). Except despite now being on good connectivity, it doesn't send.
Here's, it's the timeline state that's incorrect; it should still have stayed in hard fail mode. This bug has been fixed in the SDK, but the app was using an old version of the SDK at this point that didn't include the patch. (SDK fix)
The app should never ever spontaneously discard unsent messages.
The app is using SDK's commit e89659b6, which didn't have the on-disk persistence yet, so an app restart would lose unsent messages. SDK patch.
https://github.com/matrix-org/matrix-rust-sdk/pull/3619 should fix it.
Closing this as it should be included in Nightly by now and we've been testing queuing this morning.
Steps to reproduce
Screenshot from step 4, when it started to go wrong:
Outcome
What did you expect?
What happened instead?
Your phone model
iPhone 12 Pro Max
Operating system version
iOS 17.5.1
Application version
631
Homeserver
matrix.org
Will you send logs?
Yes