[4.3.0.12] MMS works, but MMS retry fails, stays Waiting forever

REPRODUCIBILITY (% or how often): always
BUILD ID = OS VERSION (Settings > About product): 4.3
HARDWARE (XA2, X10, X10 II, …): X
UI LANGUAGE:
REGRESSION: (compared to previous public release: Yes, No, ?): Yes

DESCRIPTION:

new in 4.3, MMS messages that fail to download stay in “Waiting” forever when retrying.
if you cancel the waiting, and then hit retry, it stays in waiting forever.
this is reproducible 100% of the time for me.

note that MMS works fine for me, as long as i have the correct network settings the FIRST time i send/receive the message. (which i rarely do, since i have to disable wifi to send/receive MMS)

its only retry that is broken for me, and always used to work.

PRECONDITIONS:

none

STEPS TO REPRODUCE:

  1. set wrong MMS msg center or proxy settings (so that envelope is received but MMS download fails/hangs)
    (might be enough to just change ‘Download MMS Automatically’ to false)
  2. receive an MMS so that its marked Waiting
  3. fix MMS settings (restart phone or ofono. was sometimes necessary in the past, doesnt help now)
  4. retry MMS download (long-press ‘waiting’ msg, hit cancel, hit retry)

EXPECTED RESULT:

MMS starts downloading (as it does in 4.2)

ACTUAL RESULT:

MMS stays waiting forever

ADDITIONAL INFORMATION:

none

8 Likes

its jolla-messages regression. i noticed that ofono never hears anything about the message, ever.

downgrading to jolla-messages-1.1.48.3-1.8.1.jolla.armv7hl fixes the bug.
re-installing jolla-messages-1.1.55-1.4.1.jolla.armv7hl breaks it.

4 Likes

installing the previous releases RPMs is actually a perfectly acceptable workaround for me. i do not notice any difference between the versions aside from this bug, so the improvements must be in things i dont use.

i had to downgrade my other device to fetch the RPMs with pkcon download, and then copy them over to my main device, and then install them with zypper --oldinstall.

both devices are properly upgraded, with just jolla-messages downgraded, and can receive MMS even with ‘download-mms-automatically’ set to false.

EDIT:
p.s.: i was gonna try ssu release & ssu ur, then download, then put it back, but that was too scary to do on my main. is there some way to download RPMs from other version’s repos that isnt scary?

2 Likes

Thanks for your effort in diagnosing this.
I have had problems a long time now as I went to 4.3 during EA.

I wondered why there were so few reports of issues, it turns out that I had turned off automatic download of MMS a long time ago. And now I got bit by this bug.

Have not been able to find a copy of jolla-messages-1.1.48.3-1.8.1.jolla.aarch64 but I’m sure my problem would be fixed with that as well.

For now I have change to allow automatic download.

1 Like

Managed to download jolla-messages and jolla-messages-settings version 1.1.48.3-1.8.1.jolla.aarch64.rpm
I did it by editing files in /etc/zypp/repos.d/ to add the repo for 4.2.0.21 and then downloading those files using zypper.

Then I installed them with “rpm -iv … --force”

End result, working MMS and I can now even download some of the ones that I have missed the last weeks.

1 Like

This fix works! Thank you for sharing it.

Edit: just for confirmation so Jolla looks at the jolla-messages regression in the version included with 4.3.0.12… I confirmed this regression on an Xperia X (official), Xperia XA2 Ultra (official), and my daily driver Xperia XZ2 (community). All of them are fixed by rolling back to the previous versions of jolla-messages and jolla-messages-settings by force installing the rpms.

2 Likes

How exactly do I edit the /etc/zypp/repos.d/ to download the previous version of messages?

What device are you on? If you’re on aarch64 I can send you the rpm’s so you don’t have to modify your repos. I had a device still on 4.2.0.21 so I downloaded them on it and copied to my XZ2 on 4.3.0.12.

I am on XA2. I appreciate that you will send the rpms to me, though I can’t use 64-bit packages. I would still be currious on how exactly to modify the repository though :slight_smile:

My apologies, I didn’t see this reply until now. In the morning I will pull the rpms on my XA2 Ultra and upload them for you. I’ll edit this once complete.

Sorry!

i also have:
jolla-messages-1.1.48.3-1.8.1.jolla.armv7hl.rpm
jolla-messages-settings-1.1.48.3-1.8.1.jolla.armv7hl.rpm

if anyone wants them. i dont THINK that distributing unmodified, community-available binaries violates TOS, but mods feel free to stop me if im wrong.

p.s.: it looks like storeman or jolla-store runs pkcon update indiscriminately. i suggest keeping the jolla-messages RPMs on your phone, and be ready to re-install from terminal.
also, i feel like zypper addlock used to work, but it doesnt appear to affect pkcon in any way.

1 Like

workaround: install the 1.1.48.3 rpms, then use rpmrebuild to repackage it with a higher version, and install the fake-version RPMs. then pkcon/warehouse/storeman/jolla-store wont overwrite it.

run this AFTER installing the workaround old version:

rpmrebuild --directory=out --change-spec-preamble='sed -e "s/^Version:.*/Version: 1.1.56/"' --release=9.9.9 jolla-messages

rpmrebuild --directory=out --change-spec-preamble='sed -e "s/^Version:.*/Version: 1.1.56/"' --release=9.9.9 jolla-messages-settings

After installing 1.1.48.3 rpms, i tried to run rpmrebuild(as root) but it gives me error. How can I choose package to rebuild? Or should I remove jolla-messages-1.1.55-1.4.1.jolla.armv7hl before running rpmrebuild?

rpmrebuild --directory=out --change-spec-preamble=‘sed -e “s/^Version:.*/Version: 1.1.56/”’ --release=9.9.9 jolla-messages
/usr/lib/rpmrebuild/rpmrebuild.sh: line 309: +: not found
/usr/lib/rpmrebuild/rpmrebuild.sh: line 309: +: not found
/usr/lib/rpmrebuild/rpmrebuild.sh: line 162: +: not found
/usr/lib/rpmrebuild/rpmrebuild.sh: ERROR: too much packages match ‘jolla-messages’:
jolla-messages-1.1.55-1.4.1.jolla.armv7hl
jolla-messages-1.1.48.3-1.8.1.jolla.armv7hl

When I list all installed packets with

zypper pa -i

It shows something like this:

i+ | @System | jolla-messages | 1.1.48.3-1.8.1.jolla | armv7hl
i+ | jolla | jolla-messages | 1.1.55-1.4.1.jolla | armv7hl
i+ | @System | jolla-messages-settings | 1.1.48.3-1.8.1.jolla | armv7hl
i+ | jolla | jolla-messages-settings | 1.1.55-1.4.1.jolla | armv7hl

strange, you somehow have two different versions installed at once. should totally say v for one of the versions. i suggest panicking.

anyway, to answer your question:
you can pass the old rpm on the command line instead of the package name with “-p”
i.e.:

rpmrebuild --directory=out --change-spec-preamble='sed -e "s/^Version:.*/Version: 1.1.56/"' --release=9.9.9 -p jolla-messages-1.1.48.3-1.8.1.armv7hl.rpm

also, i, uh, found this link, maybe it helps someone:
https://www.sendspace.com/filegroup/LTUjVZGFFipaXgGmvNmvCw

Same thing. In my case zypper pa -i also shows both versions installed simultaneously :open_mouth:

When OS update arrives, I’d like to only have the right version to avoid any problems with OS update. What should I do with it?

P.S. I’ve just noticed that there’s a similar thing with many other packages. I’ve got multiple packages listed in two different versions originating from different sources, e.g. one from store and the other one from chum, or one from @system and the other one from store, etc. For example, harbour-sfos-forum-viewer is listed in two different versions: 1.0.8-1 for @system and 0.9.1-1 for store. It looks that it’s not a good idea to update packages between different sources. What a mess.

sounds like its zypper’s problem, not your problem. you can probably just ignore it and install the 1.1.56 rpms you make with rpmrebuild -p 1.1.48.rpm

but if you wanna ‘fix’ it, i suggest:

  1. backup your s**t, and be ready to reflash just in case.
  2. run rpmrebuild with -p on the 1.1.48 packages, or download from the link i posted
  3. zypper remove jolla-messages, and “break the system”
  4. install the RPMs you created/downloaded

if that breaks your s**t, at least you cant say zypper didnt warn you :slight_smile:

Thanks, that’s what I’ll do.

BTW. What are the other status letters in the first column shown by zypper pa -i?

i means installed, but what is i+ and v ?

For what it’s worth I too suffered from this problem today. I can normally send and receive MMS just fine, and infact could still.
However, I received 2 MMS whilst the data connection was very flacky and these MMS showed this behaviour. They showed waiting for hours prior to me trying to fix it.
During this time, I successfully sent and received other MMS. So it is something to do with failing to download instantly.
I tried cancelling and retrying, turning data on and off, opening and closing message app, and of course restarting the phone. None of these actions helped to get the MMS to download.
So I followed the advice above regarding installation of the old problem, and the problem was fixed straight away.
Hopefully this gets fixed in the next OS update.
I have an Xperia X, running 4.3.
I fixed my waiting MMS problem by completed as devel-su, with all open-repos disabled:

# ssu re 4.2.0.21
# zypper ref
# zypper install —old package jolla-messages-1.1.48.3-1.8.1.jolla.armv7hl
*** note I selected option 1 which for me, was to downgrade both jolla-messages, and jolla-messages-settings ***
# ssu re 4.3.0.12
# zypper ref
# reboot

After this, the behaviour of the messages app was correct, and the MMS downloaded upon requesting a retry.
I am not sure if this is a good way of fixing the problem, nor am I sure what will happen when the next OS upgrade arrives. Use at your own risk - nothing seems broken yet. I think I will try and remember to upgrade to the 4.3 packages prior to upgrading, though I don’t know if this is necessary.
If I can provide any further information to aid in fixing this problem please let me know.
Thanks so much.

2 Likes