This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 807911 - GAL couldn't work with evolution-ews connector
GAL couldn't work with evolution-ews connector
Status: CLOSED UPSTREAM
Product: Fedora
Classification: Fedora
Component: evolution-ews (Show other bugs)
17
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Matthew Barnes
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-03-29 02:27 EDT by Mikhail
Modified: 2012-04-20 04:52 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-04-19 05:22:13 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
error message (25.19 KB, image/png)
2012-03-29 02:27 EDT, Mikhail
no flags Details
ews settings (51.53 KB, image/png)
2012-03-29 02:28 EDT, Mikhail
no flags Details
error message (23.88 KB, image/png)
2012-04-17 05:29 EDT, Mikhail
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
GNOME Desktop 674372 None None None Never

  None (edit)
Description Mikhail 2012-03-29 02:27:09 EDT
Description of problem:
GAL couldn't work with evolution-ews connector
Comment 1 Mikhail 2012-03-29 02:27:55 EDT
Created attachment 573544 [details]
error message
Comment 2 Mikhail 2012-03-29 02:28:25 EDT
Created attachment 573545 [details]
ews settings
Comment 3 Mikhail 2012-03-29 02:30:17 EDT
I also try kill evolution-addressbook-factory process, but it not help to solve this problem
Comment 4 Milan Crha 2012-03-29 08:41:03 EDT
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).
Comment 5 Milan Crha 2012-03-29 11:25:47 EDT
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 "user@email.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.
Comment 6 Milan Crha 2012-03-29 11:59:47 EDT
By the way, is this with evolution-ews-3.3.92 or later?
Comment 7 Mikhail 2012-03-29 12:35:54 EDT
evolution-ews version 3.4.0
Comment 8 Milan Crha 2012-03-29 16:04:22 EDT
Nice, that has the fix from [1], which aimed to fix issues about contacts/calendar ESource-s for ews.

[1] https://bugzilla.gnome.org/show_bug.cgi?id=667849
Comment 9 Milan Crha 2012-03-30 09:36:43 EDT
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?
Comment 10 Mikhail 2012-04-11 01:33:29 EDT
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.
https://docs.google.com/open?id=0B0nwzlfiB4aQWjA4alp6UVhfdWs
Comment 11 Milan Crha 2012-04-11 03:28:29 EDT
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?
Comment 12 Mikhail 2012-04-11 03:41:48 EDT
"after boot" means a full machine reboot
Comment 13 Milan Crha 2012-04-12 05:44:50 EDT
OK, thanks for the update. I'll investigate further.
Comment 14 Milan Crha 2012-04-17 04:06:25 EDT
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):

   #!/bin/bash

   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.
Comment 15 Mikhail 2012-04-17 05:28:24 EDT
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
Comment 16 Mikhail 2012-04-17 05:29:02 EDT
Created attachment 577964 [details]
error message
Comment 17 Mikhail 2012-04-17 05:31:23 EDT
Log after killing addressbook factory (factory still running after close evolution)
Comment 18 Mikhail 2012-04-17 05:31:52 EDT
Created attachment 577968 [details]
log
Comment 19 Mikhail 2012-04-17 12:40:48 EDT
Created attachment 578102 [details]
log from another machine
Comment 20 Mikhail 2012-04-17 13:20:19 EDT
Created attachment 578112 [details]
log from another machine
Comment 21 Milan Crha 2012-04-18 09:02:22 EDT
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 [1] 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?

[1] http://koji.fedoraproject.org/koji/taskinfo?taskID=4001548
Comment 22 Mikhail 2012-04-18 16:12:09 EDT
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.
https://docs.google.com/open?id=0B0nwzlfiB4aQNjJubG8xcVdJOFE
Comment 23 Mikhail 2012-04-18 16:18:51 EDT
I don't know should work prompts in the menu "send to" nautilus? They do not work too.
https://docs.google.com/open?id=0B0nwzlfiB4aQTXVFZFpaY1ZSY2s
Comment 24 Milan Crha 2012-04-19 05:15:27 EDT
(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
> video.
> https://docs.google.com/open?id=0B0nwzlfiB4aQNjJubG8xcVdJOFE

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.
> https://docs.google.com/open?id=0B0nwzlfiB4aQTXVFZFpaY1ZSY2s

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.
Comment 25 Milan Crha 2012-04-19 05:22:13 EDT
I moved the evolution part to upstream as bug [1]. Please CC there yourself, in case any upstream developer will have additional questions.

[1] https://bugzilla.gnome.org/show_bug.cgi?id=674372
Comment 26 Mikhail 2012-04-19 07:44:31 EDT
Could this problem be related to the problem of locking the account at work through the evolution-mapi? 
https://bugzilla.redhat.com/show_bug.cgi?id=802110
Comment 27 Milan Crha 2012-04-20 04:52:06 EDT
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.

Note You need to log in before you can comment on or make changes to this bug.