後相關的錯誤開始使用DSE Solr的節點,初始設置罰款,並能以此爲榜樣,沒有問題:Solr模式「已關閉」和基地DSE/Solr的節點設置
我第一個測試用例是一些示例位置數據,修改了教程示例。我現在在哪裏,我可以創造我表個態,插入〜5K例如行,推動該架構得到下面的異常時:org.apache.lucene.store.AlreadyClosedException:
<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader"><int name="status">500</int><int name="QTime">245</int></lst><lst name="error"><str name="msg">Already closed</str><str name="trace">org.apache.solr.common.SolrException: Already closed
at org.apache.solr.core.SolrCore.<init>(SolrCore.java:851)
at com.datastax.bdp.search.solr.core.CassandraCoreContainer.doReload(CassandraCoreContainer.java:700)
at com.datastax.bdp.search.solr.core.CassandraCoreContainer.create(CassandraCoreContainer.java:224)
at com.datastax.bdp.search.solr.core.SolrCoreResourceManager.createCore(SolrCoreResourceManager.java:256)
at com.datastax.bdp.search.solr.handler.admin.CassandraCoreAdminHandler.handleCreateAction(CassandraCoreAdminHandler.java:117)
at org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:152)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:137)
at org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:669)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:197)
at com.datastax.bdp.search.solr.servlet.CassandraDispatchFilter.doFilter(CassandraDispatchFilter.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.cassandra.audit.SolrHttpAuditLogFilter.doFilter(SolrHttpAuditLogFilter.java:218)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.search.solr.auth.CassandraAuthorizationFilter.doFilter(CassandraAuthorizationFilter.java:100)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.search.solr.auth.DseAuthenticationFilter.doFilter(DseAuthenticationFilter.java:102)
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.Http11NioProcessor.process(Http11NioProcessor.java:891)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:750)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2283)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
所致已關閉 at org.apache.solr.core.CachingDirectoryFactory.get(CachingDirectoryFactory.java:340) at org.apache.solr.core.SolrCore.getNewIndexDir(SolrCore.java:262) at org.apache.solr.core .SolrCore.initIndex(SolrCore.java:480) at org.apache.solr.core.SolrCore。 <初始化>(SolrCore.java:772) ...... 33多個 500name = snet_data.location_test1 &行動=創建
以此爲我的表創建語句:
CREATE table location_test1 (
"id" TIMEUUID,
"source_id" UUID,
"name" VARCHAR,
"address" VARCHAR,
"address_extended" VARCHAR,
"po_box" VARCHAR,
"locality" VARCHAR,
"region" VARCHAR,
"post_town" VARCHAR,
"admin_region" VARCHAR,
"postcode" VARCHAR,
"country" VARCHAR,
"tel" VARCHAR,
"latlon" VARCHAR,
"neighborhood" SET<VARCHAR>,
"website" VARCHAR,
"email" VARCHAR,
"category_ids" SET<VARCHAR>,
"status" VARCHAR,
"chain_name" VARCHAR,
"chain_id" UUID,
PRIMARY KEY ("id"));
隨着Solr模式:
<schema name="location_test1" version="1.5">
<types>
<fieldType name="string" class="solr.StrField"/>
<fieldType name="text" class="solr.TextField">
<analyzer>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<fieldType name="geo" class="solr.GeoHashField"/>
<fieldType name="tdouble" class="solr.TrieDoubleField" precisionStep="8" positionIncrementGap="0" />
<fieldType name="int" class="solr.TrieIntField"/>
<fieldType name="uuid" class="solr.UUIDField"/>
</types>
<fields>
<field name="id" type="uuid" indexed="true" stored="true" docValues="true"/>
<field name="name" type="string" indexed="true" stored="true"/>
<field name="latlon" type="geo" indexed="true" stored="true"/>
</fields>
<defaultSearchField>name</defaultSearchField>
<uniqueKey>(id)</uniqueKey>
</schema>
被更新(10/29)後,新的測試
因此,看起來像這些錯誤正在導致B/C DSE Solr處於某種不良狀態,即使在刪除表和數據並重新開始之後,我決定將整個鍵空間作爲重新啓動點。現在得到不同的行爲..,與核心創建時的早期錯誤一致,它抱怨多值字段應該映射到List/Set類型。
<?xml version="1.0" encoding="UTF-8"?>
<response>
<lst name="responseHeader"><int name="status">500</int><int name="QTime">325</int></lst><lst name="error"><str name="msg">Unable to create core: snet_data.location_test1</str><str name="trace">org.apache.solr.common.SolrException: Unable to create core: snet_data.location_test1
at org.apache.solr.core.CoreContainer.recordAndThrow(CoreContainer.java:957)
at com.datastax.bdp.search.solr.core.CassandraCoreContainer.create(CassandraCoreContainer.java:266)
at com.datastax.bdp.search.solr.core.SolrCoreResourceManager.createCore(SolrCoreResourceManager.java:256)
at com.datastax.bdp.search.solr.handler.admin.CassandraCoreAdminHandler.handleCreateAction(CassandraCoreAdminHandler.java:117)
at org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:152)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:137)
at org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:669)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:248)
at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:197)
at com.datastax.bdp.search.solr.servlet.CassandraDispatchFilter.doFilter(CassandraDispatchFilter.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.cassandra.audit.SolrHttpAuditLogFilter.doFilter(SolrHttpAuditLogFilter.java:218)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.search.solr.auth.CassandraAuthorizationFilter.doFilter(CassandraAuthorizationFilter.java:100)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.datastax.bdp.search.solr.auth.DseAuthenticationFilter.doFilter(DseAuthenticationFilter.java:102)
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.Http11NioProcessor.process(Http11NioProcessor.java:891)
at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:750)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2283)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Multi-valued field status should be mapped to either List or Set types, found: org.apache.cassandra.db.marshal.UTF8Type
at com.datastax.bdp.search.solr.core.Cql3CassandraSolrSchemaUpdater.update(Cql3CassandraSolrSchemaUpdater.java:115)
at com.datastax.bdp.search.solr.core.CassandraCoreContainer.create(CassandraCoreContainer.java:245)
... 31 more
</str><int name="code">500</int></lst><str name="params">name=snet_data.location_test1&action=CREATE</str>
</response>
也跟其他領域的錯誤,狀態字段它在抱怨在表中定義爲varchar和架構中的一個字符串,所以不明白爲什麼它抱怨這些之前。
我現在所做的就是將模式簡化爲id,name,latlon。回到我沒有得到單值varchar/string字段的多值錯誤的地方..,回到原來的「已關閉」的錯誤
這裏是我的捲曲的語句,從例如從datastax Solr的教程上面提到的建立:
curl http://10.0.1.212:8983/solr/resource/snet_data.location_test1/solrconfig.xml --data-binary @solrconfig.xml -H 'Content-type:text/xml; charset=utf-8'
curl http://10.0.1.212:8983/solr/resource/snet_data.location_test1/schema.xml --data-binary @schema.xml -H 'Content-type:text/xml; charset=utf-8'
curl "http://10.0.1.212:8983/solr/admin/cores?action=CREATE&name=snet_data.location_test1"
所採取的步驟在運行安裝程序測試:
登錄到定製列表外殼,並做以下
創建密鑰空間:
CREATE KEYSPACE snet_data WITH REPLICATION =
{'class':'NetworkTopologyStrategy', 'Solr':1};
創建表:
CREATE table location_test1 (
"id" TIMEUUID,
"source_id" UUID,
"name" VARCHAR,
"address" VARCHAR,
"address_extended" VARCHAR,
"po_box" VARCHAR,
"locality" VARCHAR,
"region" VARCHAR,
"post_town" VARCHAR,
"admin_region" VARCHAR,
"postcode" VARCHAR,
"country" VARCHAR,
"tel" VARCHAR,
"latlon" VARCHAR,
"neighborhood" SET<VARCHAR>,
"website" VARCHAR,
"email" VARCHAR,
"category_ids" SET<VARCHAR>,
"status" VARCHAR,
"chain_name" VARCHAR,
"chain_id" UUID,
PRIMARY KEY ("id"));
(試過的5K記錄像教程兩者導入測試,同時還運行solr的捲曲命令SANS插入初始數據)
運行solr的捲曲的命令來設置的配置,架構的核心:
curl http://10.0.1.212:8983/solr/resource/snet_data.location_test1/solrconfig.xml --data-binary @solrconfig.xml -H 'Content-type:text/xml; charset=utf-8'
curl http://10.0.1.212:8983/solr/resource/snet_data.location_test1/schema.xml --data-binary @schema.xml -H 'Content-type:text/xml; charset=utf-8'
curl "http://10.0.1.212:8983/solr/admin/cores?action=CREATE&name=snet_data.location_test1"
你能分享你的捲曲聲明嗎? – phact 2014-10-28 23:25:29
請提供從DSE安裝到錯誤的逐步複製方案,並將Solr模式版本修復爲1.5。 – sbtourist 2014-10-29 09:36:00
更新的模式爲1.5(爲什麼這是必需的方式?),更新後的步驟底部我一直在遵循 – kaiyzen 2014-10-29 22:23:19