I've been running Solr for a while (4.10.3) - wanted to make the jump to
the latest & greatest. I installed 6.4.1, copied over my schema.xml -
and after a couple false starts where I needed to tweak it work with the
new version...it works! I did not copy the database, started from
scratch, and executed a "doveadm fts rescan -A". But...
Judging solely from at least one client - it's fine. But looking in the
logs I see:
1. The first scan of a mailbox dovecot's error log gives:
dovecot: imap(dmiller at amfes.com): Error: fts_solr: Lookup failed:
Bad Request
2. Subsequent scans do not appear to generate any dovecot error logs -
but I'm not certain. Each new mailbox/subfolder scanned will each have
one error on the initial scan.
3. Solr's log gives me the following - on every search.
2017-02-09 05:50:12.412 ERROR (qtp205125520-15) [ x:dovecot]
o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: Bad
contentType for search handler :text/xml
request={q=from:"test"+OR+to:"test"+OR+cc:"test"+OR+subject:"test"+OR+body:"test"&fl=uid,score&sort=uid+asc&fq=%2Bbox:c1af150abfc9df4d7f7a00003bc41c5f+%2Buser:"dmiller
at amfes.com"&rows=67135}
at
org.apache.solr.request.json.RequestUtil.processParams(RequestUtil.java:72)
at
org.apache.solr.util.SolrPluginUtils.setDefaults(SolrPluginUtils.java:180)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:163)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:2306)
at
org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:658)
at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:464)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:345)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:296)
at
org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1691)
at
org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:582)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at
org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at
org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at
org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
at
org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512)
at
org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at
org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
at
org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at
org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
at
org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:119)
at
org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
at org.eclipse.jetty.server.Server.handle(Server.java:534)
at
org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320)
at
org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
at
org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at
org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
at
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
at
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
at
org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
at
org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
at
org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
at java.lang.Thread.run(Thread.java:745)
2017-02-09 05:50:12.412 INFO (qtp205125520-15) [ x:dovecot]
o.a.s.c.S.Request [dovecot] webapp=/solr path=/select
params={q=from:"test"+OR+to:"test"+OR+cc:"test"+OR+subject:"test"+OR+body:"test"&fl=uid,score&sort=uid+asc&fq=%2Bbox:c1af150abfc9df4d7f7a00003bc41c5f+%2Buser:"dmiller
at amfes.com"&rows=67135}
status=400 QTime=1
My managed-schema file is:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Solr managed schema - automatically generated - DO NOT EDIT -->
<schema name="dovecot" version="1.5">
<uniqueKey>id</uniqueKey>
<fieldType name="long" class="solr.TrieLongField"
positionIncrementGap="0" precisionStep="0"/>
<fieldType name="phonetic" class="solr.TextField"
indexed="true"
stored="false">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.DoubleMetaphoneFilterFactory"
inject="true"/>
</analyzer>
</fieldType>
<fieldType name="string" class="solr.StrField"
omitNorms="true"
sortMissingLast="true"/>
<fieldType name="boolean" class="solr.BoolField"
sortMissingLast="true"/>
<fieldType name="booleans" class="solr.BoolField"
sortMissingLast="true" multiValued="true"/>
<fieldType name="tlongs" class="solr.TrieLongField"
docValues="true"
precisionStep="8" positionIncrementGap="0"
multiValued="true"/>
<fieldType name="tdoubles"
class="solr.TrieDoubleField"
docValues="true" precisionStep="8"
positionIncrementGap="0"
multiValued="true"/>
<fieldType name="tdate" class="solr.TrieDateField"
docValues="true"
precisionStep="6" positionIncrementGap="0"/>
<fieldType name="tdates" class="solr.TrieDateField"
docValues="true"
precisionStep="6" positionIncrementGap="0"
multiValued="true"/>
<fieldType name="text_en_splitting"
class="solr.TextField"
autoGeneratePhraseQueries="true"
positionIncrementGap="100">
<analyzer type="index">
<charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-FoldToASCII.txt"/>
<charFilter class="solr.MappingCharFilterFactory"
mapping="mapping-ISOLatin1Accent.txt"/>
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StopFilterFactory"
words="stopwords.txt"
ignoreCase="true"/>
<filter class="solr.WordDelimiterFilterFactory"
catenateNumbers="1" generateNumberParts="1"
splitOnCaseChange="1"
generateWordParts="1" catenateAll="0"
catenateWords="1"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory"
expand="true"
ignoreCase="true" synonyms="synonyms.txt"/>
<filter class="solr.StopFilterFactory"
words="stopwords.txt"
ignoreCase="true"/>
<filter class="solr.WordDelimiterFilterFactory"
catenateNumbers="0" generateNumberParts="1"
splitOnCaseChange="1"
generateWordParts="1" catenateAll="0"
catenateWords="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory"
protected="protwords.txt"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
<field name="_version_" type="long"
indexed="true" stored="true"/>
<field name="bcc" type="text_en_splitting"
indexed="true"
stored="false"/>
<field name="body" type="text_en_splitting"
indexed="true"
stored="false"/>
<field name="box" type="string"
indexed="true" required="true"
stored="true"/>
<field name="cc" type="text_en_splitting"
indexed="true" stored="false"/>
<field name="from" type="text_en_splitting"
indexed="true"
stored="false"/>
<field name="hdr" type="text_en_splitting"
indexed="true"
stored="false"/>
<field name="id" type="string"
indexed="true" required="true"
stored="true"/>
<field name="subject" type="text_en_splitting"
indexed="true"
stored="false"/>
<field name="text" type="text_en_splitting"
multiValued="true"
indexed="true" stored="false"/>
<field name="to" type="text_en_splitting"
indexed="true" stored="false"/>
<field name="uid" type="long" indexed="true"
required="true"
stored="true"/>
<field name="user" type="string"
indexed="true" required="true"
stored="true"/>
</schema>
--
Daniel
On 09.02.2017 07:54, Daniel Miller wrote:> I've been running Solr for a while (4.10.3) - wanted to make the jump > to the latest & greatest. I installed 6.4.1, copied over my > schema.xml - and after a couple false starts where I needed to tweak > it work with the new version...it works! I did not copy the database, > started from scratch, and executed a "doveadm fts rescan -A". But... > > Judging solely from at least one client - it's fine. But looking in > the logs I see: > 1. The first scan of a mailbox dovecot's error log gives: > dovecot: imap(dmiller at amfes.com): Error: fts_solr: Lookup failed: > Bad Request > > 2. Subsequent scans do not appear to generate any dovecot error logs > - but I'm not certain. Each new mailbox/subfolder scanned will each > have one error on the initial scan. > > 3. Solr's log gives me the following - on every search. > 2017-02-09 05:50:12.412 ERROR (qtp205125520-15) [ x:dovecot] > o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: Bad > contentType for search handler :text/xml > request={q=from:"test"+OR+to:"test"+OR+cc:"test"+OR+subject:"test"+OR+body:"test"&fl=uid,score&sort=uid+asc&fq=%2Bbox:c1af150abfc9df4d7f7a00003bc41c5f+%2Buser:"dmiller at amfes.com"&rows=67135}Hi! can you please use tcpdump or wireshark to capture the actual HTTP request causing this exception? Aki
Does this work (pcap attached)? Daniel On 2/8/2017 10:57 PM, Aki Tuomi wrote:> > On 09.02.2017 07:54, Daniel Miller wrote: >> I've been running Solr for a while (4.10.3) - wanted to make the jump >> to the latest & greatest. I installed 6.4.1, copied over my >> schema.xml - and after a couple false starts where I needed to tweak >> it work with the new version...it works! I did not copy the database, >> started from scratch, and executed a "doveadm fts rescan -A". But... >> >> Judging solely from at least one client - it's fine. But looking in >> the logs I see: >> 1. The first scan of a mailbox dovecot's error log gives: >> dovecot: imap(dmiller at amfes.com): Error: fts_solr: Lookup failed: >> Bad Request >> >> 2. Subsequent scans do not appear to generate any dovecot error logs >> - but I'm not certain. Each new mailbox/subfolder scanned will each >> have one error on the initial scan. >> >> 3. Solr's log gives me the following - on every search. >> 2017-02-09 05:50:12.412 ERROR (qtp205125520-15) [ x:dovecot] >> o.a.s.h.RequestHandlerBase org.apache.solr.common.SolrException: Bad >> contentType for search handler :text/xml >> request={q=from:"test"+OR+to:"test"+OR+cc:"test"+OR+subject:"test"+OR+body:"test"&fl=uid,score&sort=uid+asc&fq=%2Bbox:c1af150abfc9df4d7f7a00003bc41c5f+%2Buser:"dmiller at amfes.com"&rows=67135} > Hi! > > can you please use tcpdump or wireshark to capture the actual HTTP > request causing this exception? > > Aki-------------- next part -------------- A non-text attachment was scrubbed... Name: solr-cap.pcapng Type: application/octet-stream Size: 15988 bytes Desc: not available URL: <http://dovecot.org/pipermail/dovecot/attachments/20170209/f85aa595/attachment.obj>