Red Hat Bugzilla – Bug 807911
GAL couldn't work with evolution-ews connector
Last modified: 2012-04-20 04:52:06 EDT
Description of problem:
GAL couldn't work with evolution-ews connector
Created attachment 573544 [details]
Created attachment 573545 [details]
I also try kill evolution-addressbook-factory process, but it not help to solve this problem
Thanks for a bug report. I'm wondering where the GAL got exchange.citrus-it.ru. Couldn't it be from the Contacts addressbook, though even there the host name doesn't match the one shown in your preferences.
Could you invoke this command, please? It'll show us where this comes from.
$ gconftool-2 --get /apps/evolution/addressbook/sources | grep citrus
Please make sure you'll not expose any private information. Also note the GAL allows only searching in EWS, thus write part of the email in the Search field, and you should receive related person(s).
Thanks for the email. From it I see that GAL is incorrectly defined, its "hosturl" property is formed as "exchange.email.com", where "email.com" is taken from yours "email@example.com" as filled while creating the account. It seems like a bug in the code for GAL, because Contacts addressbook has filled "hosturl" properly properly. Making GAL's "hosturl" same as that from Contacts book should fix the issue (with gconf-editor, change requires restart of evolution and evolution-addressbook-factory). I gave you more detailed guide with specified values in the email, which I'm not going to repeat here.
Please update the bug whether it helped you. Thanks in advance.
By the way, is this with evolution-ews-3.3.92 or later?
evolution-ews version 3.4.0
Nice, that has the fix from , which aimed to fix issues about contacts/calendar ESource-s for ews.
I checked the code, but I do not see anything obviously incorrect in it with respect of hosturl property. Is it possible you tried ews with version earlier than 3.3.92, and the GAL book definition left there from previous account? I cannot think of any other way of getting this issue currently.
(In reply to comment #5)
> Making GAL's "hosturl" same as that from Contacts
> book should fix the issue (with gconf-editor, change requires restart of
> evolution and evolution-addressbook-factory). I gave you more detailed guide
> with specified values in the email, which I'm not going to repeat here.
Did you try the above, and did it help, please?
Now a have recreated evolution-ews account.
And have another issue...
GAL not work after boot until I kill process evolution-addressbook-factory.
Details can be seen in the video.
Thanks for the update. Was the "after boot" a full machine reboot, or just logout and login after account change? I'm asking because with logout & login it could happen that the factory was not closed, and was left confused by the account change, while after full reboot, when you stay on the login prompt (in gdm) there should be no evolution-addressbook-factory running, it should be only started on demand, when for example opening composer in evolution. It is basically what happened in your video, you killed the old factory, the composer you left opened didn't notice it and tried to communicate with it on an old GDBus connection (there are printed warnings on evolution's console in this case), but with closing the composer and opening a new one, the new connects to the new factory, and the rest begins to work as expected. You should see everything running as expected after new reboot, I guess?
"after boot" means a full machine reboot
OK, thanks for the update. I'll investigate further.
Strange, it works for me with no such issue. I see a little delay before the search term comes to work, which is due to opening the addressbook and connecting to the server, but otherwise the search work, even after fresh boot. Could you try to gather debug prints for the evolution-addressbook-factory process, please? You can do it easily, by replacing the process with a script which will write this output into a log file. I would do that with these commands as root:
$ cd /usr/libexec
$ mv evolution-addressbook-factory evolution-addressbook-factory.orig
Then create a file names evolution-addressbook-factory in /usr/libexec and fill it with this content (no extra spaces at the beginning of those tow lines):
EWS_DEBUG=2 /usr/libexec/evolution-addressbook-factory.orig &>/tmp/log.txt
Save the file and run:
$ chmod a+x evolution-addressbook-factory
Then restart your machine and repeat the issue. Do not kill the factory, just close evolution, wait for 10 seconds, and only if the factory will be still running then kill it. Then check the /tmp/log.txt file for its content, it should provide detailed information about communication between server and evolution, which may shed a light on this issue. Please note that the file can contain private information, thus either strip it or feel free to send it directly to me, to avoid exposing this information in public. Thanks in advance.
Also, updates-testing contains evolution-ews-3.4.1 now, thus if you could update to that version first, then it'll be better too. It's just to use fresh code.
1) no addressbook factory before logon
2) after logon, but before running evolution, addressbook factory already running
3) when I try fill field "To" in composer I see attached error message
Created attachment 577964 [details]
Log after killing addressbook factory (factory still running after close evolution)
Created attachment 577968 [details]
Created attachment 578102 [details]
log from another machine
Created attachment 578112 [details]
log from another machine
Thanks for the update. The error says "Authentication failed", only not the E_CLIENT_ERROR, but error from EWS. That's probably the issue here. The attached logs seem to prove that, as they are full of unauthorized responses.
Could you try with this  test package, please? It contains a fix which should make this behave better, without need of a restart of the address book factory.
By the way, do you enter EWS account password each start of evolution?
Thanks, It helps, but not in all cases.
If try fill field "To" directly, evolution composer not solves variants contacts from GAL while I not kill addressbook factory. It see on the new video.
I don't know should work prompts in the menu "send to" nautilus? They do not work too.
(In reply to comment #22)
> Thanks, It helps, but not in all cases.
> If try fill field "To" directly, evolution composer not solves variants
> contacts from GAL while I not kill addressbook factory. It see on the new
Good, I'm committing my change to sources (3.5.1+/3.4.2+). The entering of To directly in the composer, it can be something with the entry itself. It'll need even more investigation.
(In reply to comment #23)
> I don't know should work prompts in the menu "send to" nautilus? They do not
> work too.
I would file this to nautilus-sendto, it uses its own EContactEntry, derived from GtkEntry. Maybe the core issue is the same, but maybe not. Better to to use Gnome's bugzilla, it has its bug tracker there.
I moved the evolution part to upstream as bug . Please CC there yourself, in case any upstream developer will have additional questions.
Could this problem be related to the problem of locking the account at work through the evolution-mapi?
There might not be enough to restart evolution-addressbook-factory process, and that's the only thing you did in your video. Or you mean that before starting recording you unlocked your account? It seemed like you recorded just after the login. That way I believe it is unrelated to bug #802110, and the bug is somewhere with the name-selector-entry.