Solr Query Удалить лимит до 3 записей? - PullRequest
2 голосов
/ 03 ноября 2011

До сих пор использовали Solr 3.2 и функция удаления запроса ограничивалась 3 записями.Если я отправлю больше 3, получит следующую ошибку:

Apache Tomcat / 7.0.12 - Отчет об ошибке525D76;} ->

Статус HTTP 500 - Ошибка синтаксического анализа JSON: char =,, position = 77

BEFORE = '":" перечисление: 623787 "}," удалить ": {" запрос ":" перечисление: 656349 "}},' AFTER = '{" удалить": {" query ":" listid: 955907 "}} '

org.apache.noggit.JSONParser $ ParseException: Ошибка синтаксического анализа JSON: char = ,, position = 77 BEFORE ='": "listid:623787 "}," delete ": {" query ":" listid: 656349 "}}, 'AFTER =' {" delete ": {" query ":" listid: 955907 "}} 'в org.apache.noggit.JSONParser.err (JSONParser.java:223) в org.apache.noggit.JSONParser.next (JSONParser.java:622) в org.apache.noggit.JSONParser.nextEvent (JSONParser.java:663) в org.apache.s.handler.JsonLoader.processUpdate (JsonLoader.java:148) в org.apache.solr.handler.JsonLoader.load (JsonLoader.java:74) в org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody (ContentStreamjandB67)) в org.apache.solr.handler.RequestHandlerBase.handleRequest (RequestHandlerBase.java:129) в org.apache.solr.core.RequestHandlers $ LazyRequestHandlerWrapper.handleRequest (RequestHandlers.java:241) в org.apache.solr.core.SolrCore.execute (SolrCore: at) или SolrCore.j..apache.solr.servlet.SolrDispatchFilter.execute (SolrDispatchFilter.java:356) по адресу org.apache.solr.servlet.SolrDispatchFilter.doFilter (SolrDispatchFilter.java:252) в org.apache.catilin.java: 243) в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:210) в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:2apache.cat.cat.cat.cat.cat.cat.cat.cat.cat.cat)core.StandardContextValve.invoke (StandardContextValve.java:164) по адресу org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:462) по адресу org.apache.catalina.core.StandardHostkej (Valve) Standard_Havaв org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:100) в org.apache.catalina.valves.AccessLogValve.invoke (AccessLogValve.java:562) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) в org.apache.catalina.conter.AdterterCoy.java: 395) в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:250) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.jg18).coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:166) в org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run (JIoEndpoint.java:302) в рабочей среде java.utilTh.runTask (ThreadPoolExecutor.java:886) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908) в java.lang.Thread.run (Thread.java:662)

тип Отчет о состоянии

сообщение Ошибка анализа JSON: char = ,, position = 77 BEFORE = '":" перечисление: 623787 "}," delete ": {" query ":"перечисление: 656349 "}}, 'AFTER =' {" удалить ": {"query": "listid: 955907"}} '

org.apache.noggit.JSONParser $ ParseException: Ошибка синтаксического анализа JSON: char = ,, position = 77 BEFORE =' ":" listid: 623787"}," delete ": {" query ":" listid: 656349 "}}, 'AFTER =' {" delete ": {" query ":" Listingsid: 955907 "}} 'в org.apache.noggit.JSONParser.err (JSONParser.java:223) в org.apache.noggit.JSONParser.next (JSONParser.java:622) в org.apache.noggit.JSONParser.nextEvent (JSONParser.java:663) в org.apache.solr.обработчиквorg.apache.solr.handler.RequestHandlerBase.handleRequest (RequestHandlerBase.java:129) в org.apache.solr.core.RequestHandlers $ LazyRequestHandlerWrapper.handleRequest (RequestHandlers.java:241) в org.apache.solr.core.SolrCore.execute (SolrCore.java:1360) в org.apache.solr.servlet.SolrDispatchFilter.execute (SolrDispatchFilter.java:356) в org.apache.solr.servlet.SolrDispatchFilter.doFilter (SolrDispatchFilter.java:252) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:210) в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:240) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:164) в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:462) в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:164) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:100) в org.apache.catalina.valves.AccessLogValve.invoke (AccessLogValve.java:562) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:395) в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:250) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:188) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:166) в org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run (JIoEndpoint.java:302) в java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (ThreadPoolExecutor.java:886) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908) на java.lang.Thread.run (Thread.java:662)

описание Сервер обнаружил внутренний ошибка (JSON Parse Error: char = ,, position = 77 ДО = ' ":" listingid: 623787 "}," удалить ": {" запрос ":" listingid: 656349" }},' ПОСЛЕ = '{ "удалить": { "запрос": "listingid: 955907"}}'

org.apache.noggit.JSONParser $ ParseException: Ошибка синтаксического анализа JSON: символ = ,, позиция = 77 ДО = ' ":" listingid: 623787 "}," удалить ": {" запрос ":" listingid: 656349" }},' ПОСЛЕ = '{ "удалить": { "запрос": "listingid: 955907"}}' в org.apache.noggit.JSONParser.err (JSONParser.java:223) в org.apache.noggit.JSONParser.next (JSONParser.java:622) в org.apache.noggit.JSONParser.nextEvent (JSONParser.java:663) в org.apache.solr.handler.JsonLoader.processUpdate (JsonLoader.java:148) в org.apache.solr.handler.JsonLoader.load (JsonLoader.java:74) в org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody (ContentStreamHandlerBase.java:67) в org.apache.solr.handler.RequestHandlerBase.handleRequest (RequestHandlerBase.java:129) в org.apache.solr.core.RequestHandlers $ LazyRequestHandlerWrapper.handleRequest (RequestHandlers.java:241) в org.apache.solr.core.SolrCore.execute (SolrCore.java:1360) в org.apache.solr.servlet.SolrDispatchFilter.execute (SolrDispatchFilter.java:356) в org.apache.solr.servlet.SolrDispatchFilter.doFilter (SolrDispatchFilter.java:252) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:243) в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:210) в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:240) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:164) в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:462) в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:164) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:100)в org.apache.catalina.valves.AccessLogValve.invoke (AccessLogValve.java:562) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:395) в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:250) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:188) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:166) в org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run (JIoEndpoint.java:302) в java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (ThreadPoolExecutor.java:886) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908) на java.lang.Thread.run (Thread.java:662)), которая помешала ему выполняя этот запрос.

Apache Tomcat / 7.0.12

Я проверил формат JSON с помощью JSONLint и он работал нормально. Есть идеи?

Спасибо

РЕДАКТИРОВАТЬ: это текущий формат, который тестируется, и я использую curl для выполнения модульного теста также подтвердить это.

[{"перечисление": "793814"}, {"перечисление": "812905"}, {"перечисление": "1028111"}, {"перечисление": "454482"}, {"перечисление": "1011465"}]

1 Ответ

4 голосов
/ 17 ноября 2011

Хорошо, я понял это, посмотрите на оригинальный запрос:

{ "удалить": { "запрос": "listingid: 1185"}, "удалить": { "запрос": "listingid: 1184"}}, { "удалить": { "запрос": "listingid: 1183 "}}, {" удалить ": {" запрос ":" listingid: 1172" }}

обратите внимание, что инкапсуляция неправильная, она должна быть:

{ "удалить": { "запрос": "listingid: 1185"}, "удалить": { "запрос": "listingid: 1184"}, "удалить": { "запрос": "listingid: 1183" }, "удалить": { "запрос": "listingid: 1172"}}

спасибо за помощь от всех вас

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...