[Dovecot] Rare error with concurrent users searching with fts-solr
Hi all,
If I start two o more connections with diferent users that make a search text to solr I get this message many times:
Error: fts_solr: Query didn't return uid
If I repeat the test about 2000 times, with only one user concurrent, with 60 diferent users, without concurrent, I get between 0.
If I repeat the test about 2000 times, with 2 users concurrent, I get between 3 or 10 errors.
If I repeat the test about 2000 times, with 4 users concurrent, I get between 10-20 errors.
After see this error, I set a tcpdump to try to watch the SOLR XML and GET, I can watch that Solr send a xml like this:
<response></response>
with 200 as http status
When the normal response is like this
<response> <lst name="responseHeader"> <int name="status">0</int> <int name="QTime">1</int> <lst name="params"> <str name="fl">uid,score</str> <str name="sort">uid asc</str> <str name="q">BLABLABLA</str> <str name="fq">+user:"ANYUSER" +uidv:1208469916 +box:"ANYFOLDER" -ns:[* TO *]</str> <str name="rows">1</str> </lst> </lst> <result name="response" numFound="0" start="0" maxScore="0.0"/> </response>
At first, I think that the problems it's in Solr, but after get all GET from tcpdump, I make a python script with urllib2 and send it all to Solr with the same concurrency and I can't get any error or "empty response"
Have someone made a intensive concurrency tests over Dovecot + Solr ?
-- Antonio Pérez-Aranda Alcaide aperezaranda@yaco.es
Yaco Sistemas S.L. http://www.yaco.es/ C/ Rioja 5, 41001 Sevilla Teléfono +34 954 50 00 57 Fax +34 954 50 09 29
On Thu, 2011-10-13 at 10:31 +0200, Antonio Perez-Aranda wrote:
After see this error, I set a tcpdump to try to watch the SOLR XML and GET, I can watch that Solr send a xml like this:
<response></response>
with 200 as http status
When the normal response is like this
<response> <lst name="responseHeader"> ..
Check what kind of commands Dovecot sends. Is this maybe a reply to a somewhat different (broken?) command than others?
At first, I think that the problems it's in Solr, but after get all GET from tcpdump, I make a python script with urllib2 and send it all to Solr with the same concurrency and I can't get any error or "empty response"
You mean send the exact same commands as Dovecot sent when this failed?
It's anyway difficult for me to guess how this could be Dovecot's fault, if the command that gives the broken response normally works.
participants (2)
-
Antonio Perez-Aranda
-
Timo Sirainen