Error modifying contact, other error when saving contacts

Bug #673568 reported by Joshua Hoover
268
This bug affects 52 people
Affects Status Importance Assigned to Milestone
couchdb-glib
Fix Released
High
Rodrigo Moya
evolution-couchdb
Fix Released
High
Rodrigo Moya
couchdb-glib (Ubuntu)
Fix Released
High
Rodrigo Moya
Maverick
Fix Released
High
Rodrigo Moya
Natty
Fix Released
High
Rodrigo Moya
evolution-couchdb (Ubuntu)
Fix Released
High
Rodrigo Moya
Maverick
Fix Released
High
Rodrigo Moya
Natty
Fix Released
High
Rodrigo Moya

Bug Description

Filed on behalf of user Simon Schneebeli, who gets an the "Error modifying contact. Other error." in Evolution when attempting to modify or delete a contact. Debug log is attached.
Most likely this error happens due to internal desktopcouch-glib structure corruption.

This bug in Maverick prevents users from editing or deleting contacts in their Ubuntu One address book in Evolution.

-----

TEST CASE:
Must have a computer setup with an Ubuntu One account already.

1. Open Evolution
2. Create a new contact in the Ubuntu One address book
3. Edit the contact in the Ubuntu One address book and try to save it

Expected result: Contact is saved in Evolution without any error

visibility: public → private
Changed in evolution-couchdb:
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Ubuntu One Desktop+ team (ubuntuone-desktop+)
Revision history for this message
Roman Yepishev (rye) wrote :

Upon removal the contact, here's what json is sent:
{ "_id" : "e83e2abe76e13bdec26018af040002ec",
   "_rev" : "1-df54e6c906fe01587069554aba329163",
   "record_type" : "http://www.freedesktop.org/wiki/Specifications/desktopcouch/contact",
   "title" : "",
   "first_name" : "Beebo",
   "middle_name" : "",
   "last_name" : "",
   "suffix" : "",
   "nick_name" : "",
   "spouse_name" : "",
   "job_title" : "",
   "manager_name" : "",
   "assistant_name" : "",
   "notes" : "",
   "P\xc9S\x02" : null
}

But when contact is successfully modified, then the following is stored:
{
  "_id":"e83e2abe76e13bdec26018af040002ec",
  "_rev":"2-ec9839adb6945e15ec8eb01da8fe9be2",
  "record_type":"http://www.freedesktop.org/wiki/Specifications/desktopcouch/contact",
  "title":"",
  "first_name":"Beebo",
  "middle_name":"",
  "last_name":"",
  "suffix":"",
  "nick_name":"omg",
  "spouse_name":"",
  "job_title":"",
  "manager_name":"",
  "assistant_name":"",
  "notes":"",
  "application_annotations":{"\u00105E\u0002":null}
}

With broken application_annotations node. I believe this has something to do with couchdb-glib.

visibility: private → public
Roman Yepishev (rye)
description: updated
Revision history for this message
Roman Yepishev (rye) wrote :

The attempt to run test-couchdb-glib ends up with the following on Maverick:

Connecting to Couchdb at http://ErOGVLVdJw:SianblfwnC@127.0.0.1:37841
/testcouchdbglib/TestArrayField: OK
/testcouchdbglib/TestStructField: OK
/testcouchdbglib/ListDatabases: Segmentation fault

due to code in COUCHDB_IS_DOCUMENT macro accessing some nonexisting location.

The code also creates invalid json during json_generator_to_data serialization in case CouchdbDocument was previously parsed by couchdb-glib. An attempt to serialize "indent" member is performed, which raises json-CRITICAL node != null assertion and the testcase aborts. I suppose something around the attempt to serialize members that are not in the document at all may have something to do with that.

Changed in couchdb-glib:
assignee: nobody → Rodrigo Moya (rodrigo-moya)
status: New → In Progress
Changed in evolution-couchdb:
assignee: Ubuntu One Desktop+ team (ubuntuone-desktop+) → Rodrigo Moya (rodrigo-moya)
status: Confirmed → In Progress
Revision history for this message
Lee W. Schreiter (lee-schreiter) wrote :

New to Evolution and have three blank contacts that appear that cannot be deleted. Ubuntu Desktop x386 10.10.

Revision history for this message
Charles Pratt (cpratt) wrote :

Just started using Evolution, patched earlier today. Issue showing up for me as well, three empty contacts plus my one test contact, errors trying to delete any of them.

Revision history for this message
Rodrigo Moya (rodrigo-moya) wrote :

I committed a fix to couchdb-glib a couple of weeks ago, that should be in the nightly packages, so please test those and let us know if it already happens

Revision history for this message
Loïc Alejandro (loic-alejandro) wrote :

How do we get a this nightly package ?

Revision history for this message
Mauricio Pretto (pretto) wrote :

That's awesome news Rodrigo, can wait to get this working !
is this patch for 10.10 and 11.04?
Thanks!

Revision history for this message
Mauricio Pretto (pretto) wrote :

FYI the package is available on the ppa ppa:ubuntuone/nightlies

Revision history for this message
Mauricio Pretto (pretto) wrote :

for me, the problem is not solved

Levoplazzo (levoplazzo)
Changed in evolution-couchdb:
status: In Progress → Confirmed
Changed in couchdb-glib:
status: In Progress → Fix Committed
Changed in evolution-couchdb:
status: Confirmed → New
status: New → Opinion
assignee: Rodrigo Moya (rodrigo-moya) → Levoplazzo (levoplazzo)
status: Opinion → Fix Committed
dobey (dobey)
Changed in evolution-couchdb:
assignee: Levoplazzo (levoplazzo) → Rodrigo Moya (rodrigo-moya)
Revision history for this message
Joaquín Ignacio Aramendía (samsagax) wrote :

As stated in Ubuntu One Status page (https://wiki.ubuntu.com/UbuntuOne/Status), the Contact syncing service is working for Ubuntu 10.10 users. I'm a Maverik user and is not working for me with no error message. Simply is not sending/receiving data.

Changed in couchdb-glib:
status: Fix Committed → Fix Released
Revision history for this message
Martin G Miller (mgmiller) wrote :

Using Maverick 64 bit. I can make a new contact, but as soon as I try to change it, I get the error message above. Also, the couch db is slow to show up when I select contacts. I have to click on it a few times before my contacts show up.

Changed in couchdb-glib:
status: Fix Released → In Progress
Revision history for this message
Mauricio Pretto (pretto) wrote :

does this applies to natty branch also?

Revision history for this message
David Ayers (ayers) wrote :

I just installed natty beta 1 and registered with ubuntuone...

Sync is not working correctly instead of syncing 4 large files they were deleted and a conflict marker was left on the computer from which they were originally copied from.

Evolution does not show the couchdb entry.

So I cannot test this with natty.
/me goes off reconstructing his files from a backup.

Revision history for this message
Roman Yepishev (rye) wrote :

David, could you please archive the logs from ~/.cache/ubuntuone/log and send them to <email address hidden> so we could find out why the files were removed.

Regarding the couchdb entry - could you please check whether evolution-couchdb package is installed?

Revision history for this message
David Ayers (ayers) wrote :

Hello Roman, thanks for your feedback. I sent both the logs of my main computer and of the natty VM to u1-support@.

Concerning the couchdb entry. evelution-couchdb was not installed! ( thought it would be installed when I configured UbuntuOne and I opted into the extra syncing option... but I guess I have to install it explicitly).

Yet I can confirm that I can add and edit a contact from Natty! Thanks!

Changed in couchdb-glib:
status: In Progress → Fix Released
Changed in evolution-couchdb:
status: Fix Committed → Fix Released
Changed in evolution-couchdb (Ubuntu Natty):
status: New → Fix Released
assignee: nobody → Rodrigo Moya (rodrigo-moya)
importance: Undecided → Medium
Changed in couchdb-glib:
importance: Undecided → High
Changed in evolution-couchdb (Ubuntu Maverick):
importance: Undecided → High
assignee: nobody → Rodrigo Moya (rodrigo-moya)
Changed in couchdb-glib (Ubuntu Natty):
status: New → Fix Released
importance: Undecided → Medium
assignee: nobody → Rodrigo Moya (rodrigo-moya)
Changed in evolution-couchdb (Ubuntu Natty):
importance: Medium → High
Changed in couchdb-glib (Ubuntu Natty):
importance: Medium → High
Changed in couchdb-glib (Ubuntu Maverick):
importance: Undecided → High
assignee: nobody → Rodrigo Moya (rodrigo-moya)
description: updated
description: updated
Revision history for this message
Alessio Bolognino (themolok) wrote :

Is this supposed to be fixed? Because I'm using Natty fully upgraded and I still can't delete contacts.

Revision history for this message
Pavol Klačanský (pavolzetor-deactivatedaccount) wrote :

for me fixed

paul stone (stonesgoods)
Changed in evolution-couchdb:
assignee: Rodrigo Moya (rodrigo-moya) → paul stone (stonesgoods)
Changed in evolution-couchdb:
assignee: paul stone (stonesgoods) → Rodrigo Moya (rodrigo-moya)
Changed in couchdb-glib (Ubuntu Maverick):
status: New → Confirmed
Changed in evolution-couchdb (Ubuntu Maverick):
status: New → Confirmed
Changed in couchdb-glib (Ubuntu Maverick):
status: Confirmed → Fix Released
Changed in evolution-couchdb (Ubuntu Maverick):
status: Confirmed → Fix Released
tags: added: testcase
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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