No error is shown if you try to upload media which is too large.
Steps to reproduce
- Try to send a video larger than 100MB (109MB in this instance)
- Video gets stuck in the bottom of the timeline in state unsent
- Presumably it's failing to send because it's > 100MB
Outcome
What did you expect?
A clear error, and a red (x) in send state, rather than sitting in ( ) unsent state.
What happened instead?
I have a bad feeling it might also have been looping trying to re-upload, burning roaming data, rather than failing gracefully. It's particularly important to explain to the user that they hit the upload quota should we wish to quota upload sizes in future (cc @hughns)
Your phone model
No response
Operating system version
No response
Application version
25.04.3 (159)
Homeserver
matrix.org
Will you send logs?
Yes
To be precise: the first time you try to send it, it fails with a red (x). If you then exit the timeline and go back in, it's shown as unsent. It's unclear if it's actually trying to re-send it in the bg or not.
I have a bad feeling it might also have been looping trying to re-upload, burning roaming data,
I've just checked this and it isn't trying to re-upload the file. Neither when you close the room and re-open it (causing the failure ❗️ to go back to a sending ⭕️), nor if you force quit the app and relaunch it.
This issue is particularly annoying because videos from modern smartphones with the very low compression of element-x very quickly reach synapse's default limit of 50MB.
BTW, element-web/desktop already displays a message when selecting the file that the file is larger than the server's permitted limit.
I'm noticing the issue seems to be occurring across both Android and iOS - https://github.com/element-hq/element-x-android/issues/4772 - the UX for such failures is pretty poor too with users reporting "it don't work" and that's it. There is no indication of what's occurring or why it's not working.
With https://github.com/matrix-org/matrix-rust-sdk/pull/5119/, it should be fixed. cc @jmartinesp
With matrix-org/matrix-rust-sdk#5119, it should be fixed. cc @jmartinesp
The linked PR would help in so far as the client would not attempt to upload something that would definitely fail.
However, I think we would still have the broken generic UX where the upload has failed for some other reason (e.g. spam checker rejects, [probably] any 50x from the server).
Can we get this UX fixed too?
The UX has been revisited and can be seen in https://github.com/element-hq/element-meta/issues/2918. Note that this story is specifically when it goes over the limit, generally. However, to fit videos better into the limit proactively the flow for videos has been updated as well: https://github.com/element-hq/element-meta/issues/2916.