search - Unable to delete by range in SOLR -
i have instance of solr 3.6 running, json default updatehandler.
i able delete individual documents following:
curl "http://myurl/update?commit=true" -h 'content-type:application/json' -d '{"delete": {"id":"1730887464"}}' what right way delete range of ids?
i have tried following:
curl "http://myurl/update?commit=true" -h 'content-type:application/json' -d '{"delete": {"id":"[* 1730887464]"}}' curl "http://myurl/update?commit=true" -h 'content-type:application/json' -d '{"delete": {"id":"[0 1730887464]"}}' and following exception. help/pointers appreciated. i've looked up:
http://wiki.apache.org/solr/updatejson
http://lucene.apache.org/solr/api/doc-files/tutorial.html
<html> <head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"/> <title>error 500 input string: "[* 1730887464]" java.lang.numberformatexception: input string: "[* 1730887464]" @ java.lang.numberformatexception.forinputstring(numberformatexception. java:65) @ java.lang.long.parselong(long.java:438) @ java.lang.long.parselong(long.java:478) @ org.apache.solr.schema.triefield.readabletoindexed(triefield.java:295 ) @ org.apache.solr.schema.triefield.tointernal(triefield.java:307) @ org.apache.solr.update.directupdatehandler2.delete(directupdatehandle r2.java:288) @ org.apache.solr.update.processor.runupdateprocessor.processdelete(run updateprocessorfactory.java:68) @ org.apache.solr.update.processor.logupdateprocessor.processdelete(log updateprocessorfactory.java:137) @ org.apache.solr.handler.jsonloader.processupdate(jsonloader.java:120) @ org.apache.solr.handler.jsonloader.load(jsonloader.java:75) @ org.apache.solr.handler.contentstreamhandlerbase.handlerequestbody(co ntentstreamhandlerbase.java:58) @ org.apache.solr.handler.requesthandlerbase.handlerequest(requesthandl erbase.java:129) @ org.apache.solr.core.requesthandlers$lazyrequesthandlerwrapper.handle request(requesthandlers.java:244) @ org.apache.solr.core.solrcore.execute(solrcore.java:1376) @ org.apache.solr.servlet.solrdispatchfilter.execute(solrdispatchfilter .java:365) @ org.apache.solr.servlet.solrdispatchfilter.dofilter(solrdispatchfilte r.java:260) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlet handler.java:1212) @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:3 99) @ org.mortbay.jetty.security.securityhandler.handle(securityhandler.jav a:216) @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:1 82) @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:7 66) @ org.mortbay.jetty.webapp.webappcontext.handle(webappcontext.java:450) @ org.mortbay.jetty.handler.contexthandlercollection.handle(contexthand lercollection.java:230) @ org.mortbay.jetty.handler.handlercollection.handle(handlercollection. java:114) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:1 52) @ org.mortbay.jetty.server.handle(server.java:326) @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:54 2) @ org.mortbay.jetty.httpconnection$requesthandler.content(httpconnectio n.java:945) @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:756) @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:218) @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404) @ org.mortbay.jetty.bio.socketconnector$connection.run(socketconnector. java:228) @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.j ava:582) </title> </head> <body><h2>http error 500</h2> <p>problem accessing /solr/update. reason: <pre> input string: "[* 1730887464]" java.lang.numberformatexception: input string: "[* 1730887464]" @ java.lang.numberformatexception.forinputstring(numberformatexception. java:65) @ java.lang.long.parselong(long.java:438) @ java.lang.long.parselong(long.java:478) @ org.apache.solr.schema.triefield.readabletoindexed(triefield.java:295 ) @ org.apache.solr.schema.triefield.tointernal(triefield.java:307) @ org.apache.solr.update.directupdatehandler2.delete(directupdatehandle r2.java:288) @ org.apache.solr.update.processor.runupdateprocessor.processdelete(run updateprocessorfactory.java:68) @ org.apache.solr.update.processor.logupdateprocessor.processdelete(log updateprocessorfactory.java:137) @ org.apache.solr.handler.jsonloader.processupdate(jsonloader.java:120) @ org.apache.solr.handler.jsonloader.load(jsonloader.java:75) @ org.apache.solr.handler.contentstreamhandlerbase.handlerequestbody(co ntentstreamhandlerbase.java:58) @ org.apache.solr.handler.requesthandlerbase.handlerequest(requesthandl erbase.java:129) @ org.apache.solr.core.requesthandlers$lazyrequesthandlerwrapper.handle request(requesthandlers.java:244) @ org.apache.solr.core.solrcore.execute(solrcore.java:1376) @ org.apache.solr.servlet.solrdispatchfilter.execute(solrdispatchfilter .java:365) @ org.apache.solr.servlet.solrdispatchfilter.dofilter(solrdispatchfilte r.java:260) @ org.mortbay.jetty.servlet.servlethandler$cachedchain.dofilter(servlet handler.java:1212) @ org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:3 99) @ org.mortbay.jetty.security.securityhandler.handle(securityhandler.jav a:216) @ org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:1 82) @ org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:7 66) @ org.mortbay.jetty.webapp.webappcontext.handle(webappcontext.java:450) @ org.mortbay.jetty.handler.contexthandlercollection.handle(contexthand lercollection.java:230) @ org.mortbay.jetty.handler.handlercollection.handle(handlercollection. java:114) @ org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:1 52) @ org.mortbay.jetty.server.handle(server.java:326) @ org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:54 2) @ org.mortbay.jetty.httpconnection$requesthandler.content(httpconnectio n.java:945) @ org.mortbay.jetty.httpparser.parsenext(httpparser.java:756) @ org.mortbay.jetty.httpparser.parseavailable(httpparser.java:218) @ org.mortbay.jetty.httpconnection.handle(httpconnection.java:404) @ org.mortbay.jetty.bio.socketconnector$connection.run(socketconnector. java:228) @ org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.j ava:582)
you need use delete query:
curl "http://myurl/update?commit=true" -h 'content-type:application/json' -d '{"delete": {"query":"id:[* 1730887464]"}}' i don't work lot json not sure if 'query' part right...but guess see mean
Comments
Post a Comment