After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 648072 - Google Calendar Sync Needs Manual Refresh after 2.32 Upgrade
Google Calendar Sync Needs Manual Refresh after 2.32 Upgrade
Status: RESOLVED OBSOLETE
Product: evolution
Classification: Applications
Component: Calendar
2.32.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: evolution-calendar-maintainers
Evolution QA team
evolution[google]
Depends on:
Blocks:
 
 
Reported: 2011-04-18 06:37 UTC by Ian B. MacDonald
Modified: 2017-08-31 13:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Ian B. MacDonald 2011-04-18 06:37:04 UTC
After upgrading to 2.32 from 2.30 I am seeing the following behavior with my Google contacts.  I start each scenario from a fresh Maverick install (no evolution or data history).  I upgrade to 2.32 using the following PPA:
https://launchpad.net/~suraia/+archive/ppa 

I did this to easily simulate behaviour I was seeing on an Ubuntu 10.10 to 11.04 upgrade, which also goes from 2.30 to 2.32.
https://bugs.launchpad.net/ubuntu/+source/evolution/+bug/761013


I revert my snapshot, restore my 2.30.3 evolution backup. Just before I upgrade I refresh all the entries by right-click properties, and "Retrieve List" and re-select the calendar, after I upgrade and go to the Calendars in evolution I am prompted for each Calendar's password and everything is fine.  In this case I can immediately create new events in each calendar.

If I revert my snapshot, restore my 2.30.3 evolution backup, and proceed immediately to the upgrade (without refreshing each calendar in 2.30 first) then after the upgrade when I go to the Calendars in evolution I am prompted for only some of my Calendar's passwords.  The ones that don't prompt do not have any events showing up but show no error immediately - appear broken.  In the left side nave, the checkbox has no effect and generates no error for the broken calendar.  If I then try to create an appointment using one of these broken calendars I get an error "Unable to open the calendar 'xxx'.   If I then proceed to properties for this broken Calendar and "Retrieve List" I get prompted for a password, select the correct calendar.  When I press OK to leave the properties I get prompted a second time (as if it is now going to refresh), but instead receive a second error message. "Cannot open calendar: Unexpected HTTP status code 2 returned.   At this point I have not been able to make this calendar work again. 

If I revert my snapshot, restore my 2.30.3 evolution backup, and proceed immediately to the upgrade (without refreshing each calendar in 2.30 first) then after the upgrade when I go to the Calendars in evolution and for each one select properties, and do a "Retrieve List" to refresh each one, then everything works just fine, in all calendars.  It still does not prompt me for each one's password and gives no indication that some of them were not in sync, but I can see the missing events in list view easily. (no events for entire calendars). 

In scenario 2 - the one that results in broken calendars, I noticed that the gconf data is no longer correct. It shows:

uri="Google://https://www.google.com/calendar/feeds/ian.macdonald%40XxXx.com/private/full" 

instead of

uri="caldav://ian.macdonald%40XxXx.com@www.google.com/calendar/dav/ian.macdonald@XxXx.com/events
Comment 1 Ian B. MacDonald 2011-04-18 06:50:31 UTC
Well I can't edit that last post, but it wasn't super-clear exactly what I was doing on re-read. So here is a recap.

Scenario 1) Restore 2.30 Data via launch wizard, navigate to Calendars and refresh all calendars in 2.30 using "Retrieve List", proceed to complete 2.32 upgrade.  

Scenario 2) Restore 2.30 Data via launch wizard, cancel prompt for email password and exit, proceed directly to upgrade to 2.32.

Scenario 3) Restore 2.30 Data via launch wizard, cancel prompt for email password and exit, proceed directly to upgrade to 2.32. After re-load in 2.32 navigate to Calendars and refresh all calendars in 2.30 using "Retrieve List".  

Scenario 1 works without issue. Scenario 2 breaks the calendar if you try to create an appointment with any calendar not showing events.  Scenario 3 works, but only after the refresh step for any calendar not showing events.
Comment 2 Akhil Laddha 2011-04-18 12:21:42 UTC
Without entering the password, evolution won't be able to autheticate the calendar and fetch the update from server.
Comment 3 Ian B. MacDonald 2011-04-18 13:44:24 UTC
Correct, so the issues are:

1) Evolution does not prompt the user for a password and refresh all calendars on first load after upgrading.  I've had mixed results in terms of how many of my Google calendars actually get prompted on first load, so I don't quite know what the criteria is. 

2) Since evolution doesn't automatically refresh all calendars (#1), if you try to create a new appointment for a calendar that has not been refreshed after the upgrade, the uri value for that calendar source can get mangled in gconf /apps/evolution/calendar/sources at which point the calendar is broken until further workaround.
Comment 4 Ian B. MacDonald 2011-04-18 14:43:21 UTC
Upon reboot of the virtual environment where I was testing this issue, the calendar source uri corrected itself on next load after reboot.

I suspect that the refresh process must update this value.  So it seems that the sum of these issues is simply that calendars do not automatically refresh on first load after upgrade, that can lead to a scenario where they are broken until reboot.  I am not sure why I couldn't get them to refresh properly as I did kill all the related evolution processes and reload in my initial attempt to fix the broken calendar prior to inspecting the gconf keys.
Comment 5 Milan Crha 2011-06-27 17:16:20 UTC
Did you mean with all related process also e-calendar-factory and e-addressbook-factory? These are D-Bus services and the update doesn't run the newer version, but keeps running the previous, which can lead to similar issues. The broken URI is from my point of view the core issue here, knowing how to easily reproduce that may help to discover the bug. I noticed another complain with the broken uri too, but I was unable to reproduce it myself, especially on 3.0.x (or git master, which is before 3.1.3 as of now).
Comment 6 Milan Crha 2017-08-31 13:36:54 UTC
I'm closing this due to not response nad no clue. Many things changed meanwhile too, the current stable version is 3.24.5 now.