lucene-solr-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Przemysław Brzozowski <brzo...@interia.pl>
Subject Re: Invalid XML in response
Date Thu, 12 Oct 2006 07:56:10 GMT


Chris Hostetter napisał(a):
> : I don't understand why SOLR returns and invalid XML file as a response
> : in case when we insert a document with a field that is not defined
> : in the Solr configuration. Is there any purpose for that?
> :
> : It would be nice if it returns a valid xml....
>
> i think if you were adding only one doc, and it had a field problem, then
> the response would be valid XML ... but it looks like you are adding
> multiple docs, in which case even a success isn't valid XML at the
> moment...
>
> 	http://issues.apache.org/jira/browse/SOLR-2
>
> ...can you verify that this is really the same bug (two seperate <result>
> blocks because of adding two seperate docs in a single request) ... or is
> there something i'm missing in your example error besides that?
>
>   
No, it is not the same bug. Not to the end. I'm inserting one new 
document in one request:


<add>
  <doc>
    <field name="level_0">invoice</field>
    <field name="aaa">bbb</field>
    <field 
name="internal_id">10E3B793A84559081D1EF0BA6BD0BB5E1417573EC5D</field>
  </doc>
</add>

The field "aaa" doesn't exist and I get an error:

<result status="400">ERROR:unknown field 'aaa'</result><result 
status="1">org.xmlpull.v1.XmlPullParserException: expected START_TAG or 
END_TAG not END_DOCUMENT (position: END_DOCUMENT seen 
...&lt;/doc&gt;\n&lt;/add&gt;\n... @9:1)
    at org.xmlpull.mxp1.MXParser.nextTag(MXParser.java:1083)
    at org.apache.solr.core.SolrCore.update(SolrCore.java:681)
    at 
org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:52)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
    at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
    at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
    at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
    at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
    at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
    at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
    at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
    at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
    at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
    at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
    at 
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
    at 
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
    at java.lang.Thread.run(Thread.java:595)
</result>

The same stacktrace is shown in Tomcat output console.

Generally, there are problems with error messages coming from SOLR.
Sometimes they come with 400 HTTP code and in error stream. e.g. when we 
specify
a field that doesn't exist in a query. Sometimes they come with no HTTP 
error code using
normal stream ( the stack trace above).
Additionally it is hard to find out what kind of error happend... Maybe 
the status varialble should
tell something about the type of error...

regards
Przemek


> : <result status="400">ERROR:unknown field 'aaa'</result><result
> : status="1">org.xmlpull.v1.XmlPullParserException: expected START_TAG or
> : END_TAG not END_DOCUMENT (position: END_DOCUMENT seen
> : ...&lt;/doc&gt;\n&lt;/add&gt;\n... @9:1)
> :     at org.xmlpull.mxp1.MXParser.nextTag(MXParser.java:1083)
> :    at org.apache.solr.core.SolrCore.update(SolrCore.java:681)
> :     at
> : org.apache.solr.servlet.SolrUpdateServlet.doPost(SolrUpdateServlet.java:52)
> :     at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> :     at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> :    at
> : org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
> :     at
> : org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
> :    at
> : org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
> :     at
> : org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
> :     at
> : org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
> :     at
> : org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
> :     at
> : org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
> :     at
> : org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
> :    at
> : org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
> :     at
> : org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
> :     at
> : org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
> :     at
> : org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
> :     at
> : org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
> :  at java.lang.Thread.run(Thread.java:595)
> : </result>
> :
> :
> : ----------------------------------------------------------------------
> : Jestes kierowca? To poczytaj! >>> http://link.interia.pl/f199e
> :
>
>
>
> -Hoss
>
>
>
>   

----------------------------------------------------------------------
Czas pozegnac finansowe problemy.
Kredyt Citibank - prosty kredyt na wszystkie potrzeby.
Sprawdz: http://link.interia.pl/f19a5


Mime
View raw message