Solr4.4.0给出了错误代码500

Solr4.4.0给出了错误代码500,solr,lucene,solr4,Solr,Lucene,Solr4,Solr 4.4.0给出了这个错误 有人能帮我吗 HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Unable to use updateLog: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not

Solr 4.4.0给出了这个错误 有人能帮我吗

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Unable to use updateLog: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not exist),trace=org.apache.solr.common.SolrException: SolrCore 'collection1' is not available due to init failure: Unable to use updateLog: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not exist)
at org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:860)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:251)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:724) Caused by: org.apache.solr.common.SolrException: Unable to use updateLog: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not exist)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:835)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:629)
at org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:622)
at org.apache.solr.core.CoreContainer.create(CoreContainer.java:657)
at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:364)
at org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:356)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ... 1 more Caused by: org.apache.solr.common.SolrException: Unable to use updateLog: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not exist)
at org.apache.solr.update.UpdateLog.init(UpdateLog.java:267)
at org.apache.solr.update.UpdateHandler.<init>(UpdateHandler.java:134)
at org.apache.solr.update.UpdateHandler.<init>(UpdateHandler.java:94)
at org.apache.solr.update.DirectUpdateHandler2.<init>(DirectUpdateHandler2.java:96)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.apache.solr.core.SolrCore.createInstance(SolrCore.java:537)
at org.apache.solr.core.SolrCore.createUpdateHandler(SolrCore.java:607)
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:819) ... 13 more Caused by: org.apache.solr.common.SolrException: _version_field must exist in schema, using indexed="true" stored="true" and multiValued="false" (_version_ does not exist)
at org.apache.solr.update.VersionInfo.getAndCheckVersionField(VersionInfo.java:56)
at org.apache.solr.update.VersionInfo.<init>(VersionInfo.java:82)
at org.apache.solr.update.UpdateLog.init(UpdateLog.java:264) ... 23 more ,code=500}
HTTP状态500-{msg=SolrCore'collection1'由于初始化失败而不可用:无法使用updateLog:\u version\u字段必须存在于架构中,使用index=“true”stored=“true”和multiValued=“false”(\u version\u不存在),trace=org.apache.solr.common.SolrException:由于初始化失败,SolrCore“collection1”不可用:无法使用updateLog:\u version\u字段必须存在于架构中,使用index=“true”stored=“true”和multivalue=“false”(\u version\u不存在)
位于org.apache.solr.core.CoreContainer.getCore(CoreContainer.java:860)
位于org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:251)
位于org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158)
位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
位于org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
位于org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
位于org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:606)
位于org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
在java.lang.Thread.run(Thread.java:724)处,由于以下原因导致:org.apache.solr.common.SolrException:无法使用updateLog:\u version\u字段必须存在于架构中,使用index=“true”stored=“true”和multiValued=“false”(\u version\u不存在)
位于org.apache.solr.core.SolrCore(SolrCore.java:835)
位于org.apache.solr.core.SolrCore(SolrCore.java:629)
位于org.apache.solr.core.CoreContainer.createFromLocal(CoreContainer.java:622)
位于org.apache.solr.core.CoreContainer.create(CoreContainer.java:657)
位于org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:364)
位于org.apache.solr.core.CoreContainer$1.call(CoreContainer.java:356)
位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
在java.util.concurrent.FutureTask.run(FutureTask.java:166)中
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
在java.util.concurrent.FutureTask.run(FutureTask.java:166)中
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
在java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)…1更多原因:org.apache.solr.common.SolrException:无法使用updateLog:_version_字段必须存在于架构中,使用index=“true”stored=“true”和multiValued=“false”(_version_u不存在)
位于org.apache.solr.update.UpdateLog.init(UpdateLog.java:267)
位于org.apache.solr.update.UpdateHandler(UpdateHandler.java:134)
位于org.apache.solr.update.UpdateHandler(UpdateHandler.java:94)
位于org.apache.solr.update.DirectUpdateHandler2.(DirectUpdateHandler2.java:96)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
位于sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
在sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
位于java.lang.reflect.Constructor.newInstance(Constructor.java:526)
位于org.apache.solr.core.SolrCore.createInstance(SolrCore.java:537)
位于org.apache.solr.core.SolrCore.createUpdateHandler(SolrCore.java:607)
在org.apache.solr.core.SolrCore.(SolrCore.java:819)…13更多原因:org.apache.solr.common.SolrException:_version_字段必须存在于模式中,使用index=“true”stored=“true”和multiValued=“false”(_version_不存在)
在org.apache.solr.update.VersionInfo.getAndCheckVersionField(VersionInfo.java:56)上
位于org.apache.solr.update.VersionInfo(VersionInfo.java:82)
在org.apache.solr.update.UpdateLog.init(UpdateLog.java:264)…23更多,代码=500}

Solr 4.x提供了实时获取功能。为此,它会编写一个更新日志,需要定义一个_version字段

将其添加到schema.xml中的
标记中

<field name="_version_" type="long" indexed="true" stored="true"/>

或者从solrconfig.xml中注释掉这一点

  <requestHandler name="/get" class="solr.RealTimeGetHandler">
     <lst name="defaults">
       <str name="omitHeader">true</str>
       <str name="wt">json</str>
       <str name="indent">true</str>
     </lst>
  </requestHandler>

真的
json
真的

请记住,如果您注释掉/get请求处理程序,您将无法获得实时get,并且还会错过乐观并发(此处解释-)

要解决此问题,需要注释掉的正确行有:

${solr.ulog.dir:}

附言。
我知道这很老了,但仍然进入谷歌搜索的前十名。

不确定这是否是因为使用了Sunspot,但使用它时的情况有点不同: