element-x-ios icon indicating copy to clipboard operation
element-x-ios copied to clipboard

No error is shown if you try to upload media which is too large.

Open ara4n opened this issue 8 months ago • 7 comments

Steps to reproduce

  1. Try to send a video larger than 100MB (109MB in this instance)
  2. Video gets stuck in the bottom of the timeline in state unsent
  3. 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

ara4n avatar Apr 16 '25 16:04 ara4n

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.

ara4n avatar Apr 23 '25 13:04 ara4n

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.

pixlwave avatar Apr 24 '25 15:04 pixlwave

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.

beposec avatar Jun 10 '25 17:06 beposec

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.

MisguidedEmails avatar Jun 25 '25 12:06 MisguidedEmails

With https://github.com/matrix-org/matrix-rust-sdk/pull/5119/, it should be fixed. cc @jmartinesp

Hywan avatar Jul 08 '25 13:07 Hywan

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?

hughns avatar Jul 11 '25 09:07 hughns

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.

mxandreas avatar Jul 23 '25 07:07 mxandreas