Re: [Evolution] "Unable to open address book" on half of local address books.



On Sat, 2012-03-17 at 19:18 +1100, Nick Jenkins wrote:
Sometime after I upgraded from Evo 2.32 to Evo 3.2.2, I noticed that
there are some local address books that I could no longer view.
Specifically, when clicking on them, it doesn't show any contacts, but
it shows the following error message in red:
--------------------------------------------
  Unable to open address book

  This address book cannot be opened.  This either means that an
incorrect URI was entered, or the server is unreachable.

  Detailed error message: Invalid source
-------------------------------------------

And if I start evolution from a console, I see this in the console
when
the above error appears:
-------------------------------------------
  (evolution:7449): libebook-WARNING **: e_book_client_new: Cannot get
book from factory: Invalid source
-------------------------------------------

There are 12 local address books: 6 where this happens, and another 6
that work fine. 

Hi,
I recall one issue with address book definitions not being migrated
properly. It should be fixed in current sources, but I do not have exact
change handy. Try this command:
   $ gconftool-2 --get /apps/evolution/addressbook/sources | grep file:
which should usually return no lines, but for you, I believe, it'll
return 6 hits, while using "grep local:" will return about 7 hits for
you (one is a 'base_uri' in the 'group' element). All the books should
be identified by their local:<UID> 'uri', or the best they should not
have any 'uri' set, but only 'relative_uri', which is basically the same
as their 'uid'.

If you grep for "1220503344 8082 1 redux", which is the first folder in
your addressbooks directory, then you may ideally get something like
this around that value (I use 'XXX' instead of '1220503344 8082 1 redux'
for better readability).
   <group uid="YYY"
  name="On This Computer"
  base_uri="local:"
  readonly="no">
...
<source uid="XXX"
name="newlocal"
relative_uri="XXX">
   <properties>...</properties>
</source>
...
   </group>

In case the <source> will contain also 'uri' then it looks like this
uri="local:XXX", note of no double forward slashes after 'local:', but
as I said above, the On This Computer sources doesn't need uri key.

I hope I didn't get too much into detail, as for you it should be just
about getting rid of "file://" and replace it with "local:", and bonus
points if you get rid of "uri", inside sources of On This Computer group
(other groups can have the 'uri' attribute mandatory). To edit the key
use gconf-editor, because it allows you to edit the key by group, not as
a whole list of groups. Of course, make a copy of the original value
first, thus you'll have a chance to return to something, if anything
goes wrong.

Any change in the key requires restart of evolution and
e-addressbook-factory process (it's run on demand, thus killing it
before making changes is sufficient).
Hope that helps,
Milan




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]