Evolution not deleting autosave files

Bug #1983794 reported by Lindsay
86
This bug affects 17 people
Affects Status Importance Assigned to Milestone
Evolution
Fix Released
Unknown
evolution (Ubuntu)
Invalid
Low
Unassigned
Kinetic
Won't Fix
Undecided
Unassigned
libcanberra (Ubuntu)
Fix Released
Medium
Marco Trevisan (Treviño)
Jammy
Fix Released
Medium
Marco Trevisan (Treviño)
Kinetic
Won't Fix
Medium
Marco Trevisan (Treviño)

Bug Description

[ Impact ]

Autosave files are not removed from evolution local state directories (and windows leaked)

[ Test case ]

1. Open evolution, and start to compose a new email
2. Write enough text and wait few minutes so that this command returns a file
   ls -l ~/.local/share/evolution/.evolution-composer.autosave-*
3. Close the email composer window, hitting "Do not save"
4. ls -l ~/.local/share/evolution/.evolution-composer.autosave-* should list no files
5. Opening and closing again evolution should not ask to restore the previous email

[ Regression potential ]

No sounds could be performed during some UI actions

---

Running Ubuntu MATE, Ubuntu 22.04.1 LTS. Evolution v3.44.1-0ubuntu1 was installed with the distribution on a new system and received settings imported from an earlier version on another computer.

When composing an email, if the process takes long enough an autosave file is created as ~/.local/share/evolution/.evolution-composer.autosave-xxxxxx ("xxxxxx" is a random 6 character string). When the email is successfully sent, the autosave file SHOULD be deleted. It's not. When evolution is shut down and restarted I'm asked if I want to recover an unfinished email. Answering No to this will delete the autosave file, but otherwise it persists and the recovery query recurs the next time I open evolution.

Other people are having the same issue, see https://gitlab.gnome.org/GNOME/evolution/-/issues/1972. The Gnome people aren't dealing with it, perhaps considering it a distro-specific bug.

On a system used by many people this is a potential security issue.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in evolution (Ubuntu):
status: New → Confirmed
Revision history for this message
Lindsay (fmouse) wrote :

According to the analysis by Milan Crha at GNOME (see the link in the bug description) this appears to be associated with the use of Xorg and doesn't occur under Wayland. It seems that although Wayland is the default X server in Ubuntu-22.04, The desktop session for MATE isn't supported on Wayland, so Ubuntu-MATE still uses Xorg. See the comment by Martin Wimpress ("wimpy"), a Ubuntu-MATE project leader, at https://ubuntu-mate.community/t/ubuntu-mate-22-04-lts-jammy-jellyfish-release-notes/25318/8.

Revision history for this message
Marian Rainer-Harbach (marianrh) wrote :

Further analysis by Milan Crha shows that the issue under Xorg seems to be caused by Ubuntu's gtk3, see https://gitlab.gnome.org/GNOME/evolution/-/issues/1972#note_1524307.

Changed in evolution (Ubuntu):
assignee: nobody → Nathan Teodosio (nteodosio)
Changed in gtk+3.0 (Ubuntu):
assignee: nobody → Nathan Teodosio (nteodosio)
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gtk+3.0 (Ubuntu):
status: New → Confirmed
Changed in evolution (Ubuntu):
importance: Undecided → Medium
Changed in gtk+3.0 (Ubuntu):
importance: Undecided → Medium
Changed in evolution (Ubuntu):
status: Confirmed → In Progress
Changed in gtk+3.0 (Ubuntu):
status: Confirmed → In Progress
Revision history for this message
Nathan Teodosio (nteodosio) wrote :

Thank you for the bug report!

I rebuilt and installed GTK3 with Ubuntu specific patches disabled, but the problem still occurs in Xorg. :/

In two occasions I got

(evolution:3367): evolution-mail-composer-CRITICAL **: 20:45:02.635: e_msg_composer_is_soft_busy: assertion 'E_IS_MSG_COMPOSER (composer)' failed
(evolution:3367): module-composer-autosave-CRITICAL **: 20:45:02.635: e_composer_save_snapshot: assertion 'E_IS_MSG_COMPOSER (composer)' failed

in stderr. We could hardly wish for a better trail to follow.

With fatal-criticals one can backtrace that, though I still don't know what triggers it.

Revision history for this message
Lindsay (fmouse) wrote :

I notified Milan Crha (@mcrha) who's a GNOME maintainer of Evolution on the GNOME branch of this bug, https://gitlab.gnome.org/GNOME/evolution/-/issues/1972#note_1529229. He's written new features for Evolution, which have been pushed into the GNOME upstream pacakge, so he knows the code. I know I initiated this report, but you and @mcrha are far more capable of getting to the bottom of this bug than am I. I would hope that he would be reading this and possibly work with you on stomping it.

Revision history for this message
Nathan Teodosio (nteodosio) wrote :

Hey Lindsay, don't worry, this is just meant to keep information out there. :)

So, although disabling the patches didn't make an effect for a typical "Ubuntu on Xorg" (as in GDM's cog option), if I use a more minimal environment, such as if I log in a console and just `startx /bin/dwm`, the bug doesn't show up, either with patched or not patched GTK.

Another difference is that upon closing Evolution the following warning is logged in stderr:

    Your application did not unregister from D-Bus before destruction. Consider using g_application_run().

no longer affects: gtk+3.0 (Ubuntu)
Changed in libcanberra (Ubuntu):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
importance: Undecided → Medium
Revision history for this message
Lindsay (fmouse) wrote :

libcanberra, "translates GTK+ widgets signals to event sounds" wha???

Does anything important depend on libcanberra, or can it simply be uninstalled until a fix is pushed into the distribution? I'd rather have my MUA behaving properly than to hear widget event sounds.

Thanks for your work on this, and thanks to Milan Crha with GNOME Gitlab for wrangling this bug!! I truly hope you had fun with it. I've done my share of programming and debugging, but you folks are at a whole different level.

Revision history for this message
Nathan Teodosio (nteodosio) wrote :

Hey Lindsay, judging by

$ apt rdepends libcanberra-gtk3-module
libcanberra-gtk3-module
Reverse Depends:
  Depends: ubuntu-mate-desktop
  Depends: ubuntu-mate-core
  Depends: screenruler
  Depends: python3-goocalendar
  Suggests: budgie-control-center
  Suggests: gnome-control-center
  Recommends: libcanberra-gtk3-0

You can't uninstall it without uninstalling your MATE desktop as well.

That doesn't mean you can't disable it, as in

  cd /usr/lib/x86_64-linux-gnu/gtk-3.0/modules
  mv libcanberra-gtk3-module.so libcanberra-gtk3-module.so.disabled

However you would then you would be on your own.

This was really mostly tracked down by Milan, kudos to him!

Changed in libcanberra (Ubuntu):
status: New → Triaged
Revision history for this message
Lindsay (fmouse) wrote (last edit ): Re: [Bug 1983794] Re: Evolution not deleting autosave files

On Fri, 2022-08-19 at 16:47 +0000, Nathan Teodosio wrote:
> Hey Lindsay, judging by
>
> $ apt rdepends libcanberra-gtk3-module
> libcanberra-gtk3-module
> Reverse Depends:
> Depends: ubuntu-mate-desktop
> Depends: ubuntu-mate-core
> Depends: screenruler
> Depends: python3-goocalendar
> Suggests: budgie-control-center
> Suggests: gnome-control-center
> Recommends: libcanberra-gtk3-0
>
> You can't uninstall it without uninstalling your MATE desktop as
> well.

Ubuntu-MATE has some very sensible features, especially the drawer
system, which seem to be decades ahead of other GUIs, especially the
boys and girls from Redmond.

> That doesn't mean you can't disable it, as in
>
> cd /usr/lib/x86_64-linux-gnu/gtk-3.0/modules
> mv libcanberra-gtk3-module.so libcanberra-gtk3-module.so.disabled
>
> However you would then you would be on your own.

Yeah, one can get into trouble trying to do an end-run around
distribution packaging systems. Been there, done that, when
circumstances required it, but there are frequently "issues".

I'm sure y'all will be pushing a fix for libcanberra into the Ubuntu
22.04 update stream, so I'll probably just put up with the annoyance in
Evolution and wait for the fix.

> This was really mostly tracked down by Milan, kudos to him!

I dropped him a thank you note too :)

Revision history for this message
Lindsay (fmouse) wrote :

It looks as if the source of this problem has been identified. How long should it take to get the fix pushed into Ubuntu updates? I assume that it will be.

Changed in evolution:
status: Unknown → Fix Released
Changed in evolution (Ubuntu):
status: In Progress → Invalid
Revision history for this message
Lindsay (fmouse) wrote :

Nathan, it looks as if a fix for this problem was "released" a week and a half ago. Do you have any knowledge of the progress on this? I have one system here running Ubuntu MATE w. Ubuntu 22.04.1 LTS and am manually tracking released updates/fixes every few days, and the problem persists.

I have another system running 20.04.5 LTS, which doesn't have the problem, and which I'd like to bring up-to-date. I'm reluctant to do so until this problem is fully addressed since Evolution is my everyday go-to MUA, and I send a lot of emails, and having to deal with this problem every time would be a major PITA.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

Lindsay, this bug isn't fixed. The upstream bug was closed. Gitlab uses closed for both fixed and wont-fix bug statuses so Launchpad reports it as "Fix Released" which is correct some of the time.

The bug is still open for Ubuntu's libcanberra package.

Revision history for this message
Lindsay (fmouse) wrote :

Can you cite the bug report on the libcanberra package which relates to this issue? There are LOTS of them.

FWIW, the only component of the several components of the evolution suite which EXPLICITLY depends on libcanberra (ldd ....|grep canberra) is /usr/libexec/evolution-data-server/evolution-alarm-notify. Disabling the loading of this module by renaming it does NOT fix the problem, so if the problem is indeed in libcanberra then it must be used implicitly by some other part of the suite.

.... or else something much more esoteric is going on :)

Revision history for this message
Jeremy Bícha (jbicha) wrote :

This bug **is** the tracker bug for the issue we believe was triggered by libcanberra.

Revision history for this message
Nathan Teodosio (nteodosio) wrote (last edit ): Test case from 1949200
  • test-gtk.c Edit (1.2 KiB, text/x-csrc; charset=UTF-8; name="test-gtk.c")

I'm forwarding the program provided by
https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1949200/comments/26
as a useful minimal test case for the regression introduced by the
Libcanberra handle-display-closing patch.

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

Yeah, thanks I was aware of this and it was indeed my starting point.

Revision history for this message
Steven Wormuth (swormuth) wrote :

Is there some setting in Evolution for "Autosave"? And would disabling it or setting to a longer interval negate some of this while we wait for a fix?

Revision history for this message
gug09 (gug) wrote :

I, i have installed libcanberra-gtk-3-0 on my ubuntu 22.04.1 (Linux version 5.15.0-50-generic) for an other program and i have the same bug (i think ...)

evolution:
  Installé : 3.44.4-0ubuntu1

Gnome 42.4
Serveur graphique X11 (Nvidia T600)
xserver-xorg:
  Installé : 1:7.7+23ubuntu2

thanks

Revision history for this message
mike@papersolve.com (mike-papersolve) wrote :

Thanks, uninstalling libcanberra-gtk-3-0 helped with this. (I'd only installed it way back in the distant past to stop those stupid warnings on the command line!)

Revision history for this message
Esben Høg (esben-l) wrote :

To try to get rid of this problem with Evolution I uninstalled libcanberra-gtk-3-0 as <email address hidden> suggested, and after that I can only log in to my Ubuntu 22.04 in terminal mode! I have reinstalled libcanberra-gtk-3-0 but it doesn't help. I am stuck in terminal at start-up !!

(I realize now that I should never have uninstalled libcanberra-gtk-3-0)

How do I get the GUI back ??

Revision history for this message
Christoph Petzold (christoph-de) wrote :

For me

  sudo apt remove libcanberra-gtk3-module

solved the problem.

no longer affects: evolution (Ubuntu Jammy)
Changed in libcanberra (Ubuntu):
status: Triaged → In Progress
Changed in libcanberra (Ubuntu Jammy):
status: New → Triaged
importance: Undecided → Medium
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
Changed in libcanberra (Ubuntu Kinetic):
status: New → In Progress
Changed in libcanberra (Ubuntu Jammy):
status: Triaged → In Progress
Changed in libcanberra (Ubuntu Kinetic):
importance: Undecided → Low
Changed in libcanberra (Ubuntu Jammy):
importance: Medium → Low
Changed in libcanberra (Ubuntu):
importance: Medium → Low
importance: Low → Medium
Changed in libcanberra (Ubuntu Jammy):
importance: Low → Medium
Changed in libcanberra (Ubuntu Kinetic):
importance: Low → Medium
Changed in evolution (Ubuntu):
importance: Medium → Low
Changed in libcanberra (Ubuntu Kinetic):
assignee: nobody → Marco Trevisan (Treviño) (3v1n0)
description: updated
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libcanberra - 0.30-10ubuntu2

---------------
libcanberra (0.30-10ubuntu2) lunar; urgency=medium

  * d/p/gtk-module-Handle-display-closing-gracefully: Do not leak objects on
    destruction.
    As per previous fix for LP: #1949200 we were leaking Gtk Widgets when they
    were manually destroyed, because we never released the reference that we
    added previously.
    Thanks to Alberts Muktupāvels for providing the test case and some analysis.
    (LP: #1983794)

 -- Marco Trevisan (Treviño) <email address hidden> Tue, 10 Jan 2023 12:59:22 +0100

Changed in libcanberra (Ubuntu):
status: In Progress → Fix Released
Changed in evolution (Ubuntu):
assignee: Nathan Teodosio (nteodosio) → nobody
Revision history for this message
Timo Aaltonen (tjaalton) wrote : Please test proposed package

Hello Lindsay, or anyone else affected,

Accepted libcanberra into kinetic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/libcanberra/0.30-10ubuntu1.22.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-kinetic to verification-done-kinetic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-kinetic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in libcanberra (Ubuntu Kinetic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-kinetic
Changed in libcanberra (Ubuntu Jammy):
status: In Progress → Fix Committed
tags: added: verification-needed-jammy
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Hello Lindsay, or anyone else affected,

Accepted libcanberra into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/libcanberra/0.30-10ubuntu1.22.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (libcanberra/0.30-10ubuntu1.22.04.1)

All autopkgtests for the newly accepted libcanberra (0.30-10ubuntu1.22.04.1) for jammy have finished running.
The following regressions have been reported in tests triggered by the package:

mutter/42.5-0ubuntu1 (arm64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/jammy/update_excuses.html#libcanberra

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Lindsay (fmouse) wrote (last edit ): Re: [Bug 1983794] Please test proposed package

On Fri, 2023-01-27 at 17:06 +0000, Timo Aaltonen wrote:
> Hello Lindsay, or anyone else affected,
>
> Accepted libcanberra into jammy-proposed. The package will build now
> and
> be available at
> https://launchpad.net/ubuntu/+source/libcanberra/0.30-10ubuntu1.22.04.1
> in a few hours, and then in the -proposed repository.
>
> Please help us by testing this new package.

I'll be happy to test this out, but I'm a bit out to sea on building
from source these days. A couple of issues:

First, I received an email about 4 hours after yours which references the
following "excuses":

  libcanberra (0.30-10ubuntu1 to 0.30-10ubuntu1.22.04.1)

      Migration status for libcanberra (0.30-10ubuntu1 to 0.30-
  10ubuntu1.22.04.1): BLOCKED: Rejected/violates migration
  policy/introduces a regression

Is there an issue here about which I should be concerned? is the .deb
in the -proposed repository, or has it gone back to the shop for minor
repairs?

Second, I downloaded libcanberra_0.30-10ubuntu1.22.04.1.debian.tar.xz,
unpacked it, and apparently times have changed. I've built dozens of
packages using the autogen.sh; configure; make; sudo mail install
routine but although this source has an autogen.sh script, it lacks a
configure.in file and autogen.sh fails.

No need to bring me up to speed in public. A private reply re. the
required build technique will do.

Thanks for your work!!!

--
Lindsay Haisley | "The world is full of monsters with friendly
FMP Computer Services | faces and angels with scars."
512-496-7118 |
http://www.fmp.com | - Heather Brewer

Revision history for this message
miguelquiros (mquiros) wrote :

Updated packages from proposed repository.

In a quick first test, the bug has not shown up. If it does not appear next days, we may consider the issue as solved.

Thanks.

Revision history for this message
Jeremy Bícha (jbicha) wrote :

You shouldn't build the package from source; it is already built in the proposed updates repository.

miguelquiros, please specify what version of Ubuntu you are using. There are proposed packages for both Ubuntu 22.04 LTS and Ubuntu 22.10 available now to fix this bug.

Revision history for this message
miguelquiros (mquiros) wrote :

I am using Ubuntu 22.04.1 LTS

Best wishes.

Revision history for this message
Lindsay (fmouse) wrote (last edit ):

On Fri, 2023-01-27 at 17:06 +0000, Timo Aaltonen wrote:
> Please help us by testing this new package.

On first look, it does the Right Things in Evolution here with regard
to autosave files. Don't know about the system sounds since I don't pay
attention to these.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in evolution (Ubuntu Kinetic):
status: New → Confirmed
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

miguelquiros, can we mark this as verified?

Revision history for this message
Zsolt (muzso) wrote :

Hi!
I just found this bug report.
I use a clean installed 22.04 (not upgraded from 20.04) and a clean setup of Evolution (no config was copied from an earlier release) and I do experience this issue, it's pretty straightforward to reproduce, i.e. every time a composed email is saved into an autosave file and I send the email, the autosave file remains and upon restarting Evolution I get asked whether I want to recover. If I say yes, all emails open up that I've sent since the last restart (and "recovery").

I've tested the 0.30-10ubuntu1.22.04.1 version of the libcanberra-gtk3-module package (from the jammy-proposed repo) and I can confirm that it fixes the issue. I also hear sounds from Evolution, when a new mail arrives. I'm not sure whether this qualifies as a "libcanberra-gtk3-module still works as intended" test or not. I'm happy to do more testing if somebody gives me a testcase description.

Since I've just upgraded libcanberra-gtk3-module to 0.30-10ubuntu1.22.04.1 a few minutes ago, I've no long-term experience whether anything else got accidentally broken.

tags: added: verification-done-jammy
removed: verification-needed-jammy
Revision history for this message
miguelquiros (mquiros) wrote :

I have not experienced the bug since I updated libcanberra from proposed repo. So, as far as I am concerned, the bug seems to be solved.
Thanks a lot.

Revision history for this message
Chris Halse Rogers (raof) wrote :

Can anyone do the verification for kinetic? Releasing this for 22.04 is blocked waiting on successful testing for 22.10.

Revision history for this message
Jaap Keuter (jaap-keuter) wrote :

This bug is biting me multiple times per week. Came here through https://gitlab.gnome.org/GNOME/evolution/-/issues/1972 . Digging through the comments there found that is was solved here, now to find out the package with solution is stuck in the release workflow for two month. Who or what do we need to poke to get this to completion?

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

Jaap, what's needed is a verification for kinetic. Please see the test plan in the bug description at the very top, and try out the package from proposed as outlined in comment #24.

And we also need a kinetic verification on https://bugs.launchpad.net/ubuntu/+source/gnome-shell/+bug/1949200 which is being fixed in the same upload.

Since jammy comes before kinetic, and both are affected, we need the verification to be complete for both, to avoid jammy users upgrading to kinetic and experiencing the bug again.

Revision history for this message
Andreas Hasenack (ahasenack) wrote :

This is still needing a kinetic verification.

Revision history for this message
Łukasz Zemczak (sil2100) wrote :

Seeing that kinetic will go EOL next month, I'll conditionally skip the requirement for kinetic to be verified before this can go out. Releasing.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libcanberra - 0.30-10ubuntu1.22.04.1

---------------
libcanberra (0.30-10ubuntu1.22.04.1) jammy; urgency=medium

  * d/p/gtk-module-Handle-display-closing-gracefully: Do not leak objects on
    destruction.
    As per previous fix for lp:1949200 we were leaking Gtk Widgets when they
    were manually destroyed, because we never released the reference that we
    added previously.
    Thanks to Alberts Muktupāvels for providing the test case and some analysis.
    (LP: #1983794)

 -- Marco Trevisan (Treviño) <email address hidden> Wed, 11 Jan 2023 15:48:13 +0100

Changed in libcanberra (Ubuntu Jammy):
status: Fix Committed → Fix Released
Revision history for this message
Łukasz Zemczak (sil2100) wrote : Update Released

The verification of the Stable Release Update for libcanberra has completed successfully and the package is now being released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Revision history for this message
Utkarsh Gupta (utkarsh) wrote :

Ubuntu 22.10 (Kinetic Kudu) has reached end of life, so this bug will not be fixed for that specific release.

Changed in libcanberra (Ubuntu Kinetic):
status: Fix Committed → Won't Fix
Changed in evolution (Ubuntu Kinetic):
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.