DSE / Solr:“选择子句中未定义的名称工作负载”

时间:2014-01-10 08:56:47

标签: solr cassandra datastax-enterprise

我正在将当前的DSE实现迁移到(物理)多数据中心实现。

我已经从SimpleSnitch更改为GossipingPropertyFileSnitch,并且在滚动重启之后,除了SOLR之外,一切似乎都正常工作。

当我尝试创建一个核心时,它可以工作,但抛出异常:

org.apache.solr.common.SolrException: org.apache.cassandra.exceptions.InvalidRequestException: Undefined name workload in selection clause at com.datastax.bdp.search.solr.core.SolrCoreResourceManager.createCore(SolrCoreResourceManager.java:335) at com.datastax.bdp.search.solr.handler.admin.CassandraCoreAdminHandler.handleCreateAction(CassandraCoreAdminHandler.java:117) at org.apache.solr.handler.admin.CoreAdminHandler.handleRequestBody(CoreAdminHandler.java:144) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135) at org.apache.solr.servlet.SolrDispatchFilter.handleAdminRequest(SolrDispatchFilter.java:615) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:206) at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:155) at com.datastax.bdp.search.solr.servlet.CassandraDispatchFilter.doFilter(CassandraDispatchFilter.java:90) 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:194) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) 

创建核心并且dataimporthandler完成它的工作,但是当我尝试选择一些数据时,它会抛出另一个异常:

java.lang.RuntimeException: java.lang.NullPointerException
    at com.datastax.bdp.search.solr.handler.shard.CassandraHttpShardHandler.checkDistributed(CassandraHttpShardHandler.java:44)
    at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:178)
    at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
    at org.apache.solr.core.SolrCore.execute(SolrCore.java:1841)
.....
Caused by: java.lang.NullPointerException
    at com.datastax.bdp.search.solr.dht.ShardRouter.endpointsToContact(ShardRouter.java:577)
    at com.datastax.bdp.search.solr.dht.ShardRouter.route(ShardRouter.java:182)
    at com.datastax.bdp.search.solr.handler.shard.CassandraHttpShardHandler.checkDistributed(CassandraHttpShardHandler.java:40)

我不知道在哪里查找,也无法找到有关此错误的任何相关信息。所以我希望有人能指出我正确的方向。

1 个答案:

答案 0 :(得分:2)

这很可能是由于使用GossipingPropertyFileSnitch替换cassandra.yaml中的DseDelegateSnitch导致的错误配置:您应该保留前者,并在dse.yaml中配置后者。