[horde] Server side email searches with ActiveSync not working
Sebastian Arcus
s.arcus at open-t.co.uk
Wed Apr 25 16:13:42 UTC 2018
On 18/04/18 09:08, Sebastian Arcus wrote:
>
> On 17/04/18 14:53, Sebastian Arcus wrote:
>>
>> On 17/04/18 13:16, Ad-Min wrote:
>>> Sebastian Arcus-2 wrote
>>>> I am struggling to get server side email searches working with
>>>> ActiveSync.
>>>>
>>>> My setup is:
>>>>
>>>> Lighttpd 1.4.49
>>>> Dovecot 2.2.33
>>>> Exim 4.90
>>>> PHP 5.6.35
>>>> Postgresql 9.2.24
>>>> Horde 5.2.17
>>>>
>>>> I have tested imap searches through Thunderbird (there is an option
>>>> "run
>>>> search on server) and it is working fine and fast. I assume this means
>>>> Dovecot is configured correctly and can do imap searches?
>>>>
>>>> I have tested the Horde email searches on an iPhone 5S with iOS 11.2.6
>>>> and a Jolla phone with Sailfish 2.1. Both of them have email configured
>>>> in ActiveSync mode. On both of them, if I force them to search on the
>>>> server only, they sit there saying "searching" for a few minutes, and
>>>> then return no results (and no error either).
>>>>
>>>> On the server side, I can see the command being sent by the device to
>>>> Horde in the individual device ActiveSync log
>
> </snip>
>
>>>>
>>>> But I just can't be sure it is actually passed to Dovecot - at least I
>>>> can't see anything in the Dovecot logs to indicate that.
>>>>
>>>> Are there any other settings needed for ActiveSync server side email
>>>> searches to work? Can I troubleshoot this further, or look in any other
>>>> logs?
>>>>
>>>> Any advice much appreciated.
>>
>>>
>>>
>>>
>>> I had a similar issue (windows, hmailserver as backend). My problem
>>> was not
>>> that it doesn't work, but rather that clients timed out searching
>>> very large
>>> mailboxes. I was not able to fix this, but it works fine on smaller
>>> mailboxes. You didn't mention anything about mailbox size, so I'm just
>>> throwing this out there.
>>>
>>> I looked at my imap logs on hmailserver and confirmed that the search
>>> was
>>> actually talking place. The issue was the search took about 4 minutes to
>>> complete and the clients (all that I tried) timed out after 60 or 90
>>> seconds.
>>>
>>> I would start by enabling imap logging in your mail server and
>>> looking to
>>> see if the search is actually talking place. Likely it is (since that
>>> is a
>>> working function of horde activesync), so maybe you can track down
>>> the error
>>> from there.
>>
>> Thank you for answering and the suggestions. In the meanwhile I have
>> spent a number of hours last night investigating. One of the
>> possibilities I considered is large mailboxes which would mean long
>> search time. I logged over telnet to Dovecot and manually ran a SEARCH
>> BODY imap command. This indeed took over 5 minutes to return results.
>>
>> Then I configured Lucene FTS indexing plugin in Dovecot - and after
>> indexing the mailbox, the search started over the telnet session went
>> down to less then 1 second! Still, no joy over ActiveSync.
>>
>> Then I went and enabled debugging in Dovecot to the highest level of
>> verbosity. Still, there is no sign of SEARCH commands being sent from
>> Horde to Dovecot. I'm not really sure what is happening, but the
>> ActiveSync server-side email search seems to be broken somehow. I have
>> posted a bug report at Horde.org - maybe someone will get a chance to
>> look into this.
>
> OK - I think I finally figured out the mystery. My IMAP server in
> horde/imp/config/backends.local.php was using an old syntax:
>
> $servers['secure-imap'] = array(
>
> This syntax is not even present any more in the current backends.php -
> so I guess it must have been defaulting to the simple IMAP server -
> which, again, I am guessing that it doesn't support server side email
> searches.
>
> I should have read the upgrade DOCS a lot more closely - but it doesn't
> help at all that there are no warning or error messages in the Horde log
> when an ActiveSync device initiates server-side email searches, but the
> back-end doesn't support it (or at least I didn't find any errors in the
> logs, even in debug mode).
>
> Now everything is working fine and server-side searches return results
> correctly. I thought I would post here, in case anyone else stumbles
> over the same problem.
I am sorry to report that this problem has reared its head again. The
server-side email searches through ActiveSync are being so unpredictable
to the point that 1 in 20 might work.
My Dovecot server has Lucene full text indexing enabled, and if a run a
BODY search through Thunderbird, passing the search to the server over
IMAP, the results come back in 2 seconds, on an Inbox with 20 000 emails.
The same search executed from a phone through ActiveSync doesn't return
any results.
I've turned up debugging all the way up in Dovecot, and when searching
from the phone, all I see is just a bunch of EXAMINE imap commands - no
SEARCH command. I don't know if Horde is supposed to use SEARCH imap
command, or has a different way of doing server side email searches?
Any thoughts on this would be gratefully appreciated.
More information about the horde
mailing list