2016-12-01 66 views
0

我是DSE/Solr的新手,我試圖使用Field Transformer爲Cassandra表中的常規/ json字段建立索引。輸入/輸出變壓器的工作人員都很好,我可以使用Solr管理界面進行搜索/過濾。但是當我嘗試從CQL執行相同的操作時,它會失敗並顯示以下錯誤。我使用DSE 5.0.3DSE solr查詢不能從CQL工作

ServerError: Error while creating field '_uniqueKey{type=cql3CompositeKey_str,properties=indexed,stored,omitNorms,omitTermFreqAndPositions,docValues, required=true}' from value 'null'

Query: select party_id from custshard_ne_interface where solr_query='{"q":":","fq":"businesskey:10.10.2.15,NA,NA,NA,3"}';

Schema.xml的:

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
 
<schema name="autoSolrSchema" version="1.5"> 
 
<types> 
 
<fieldType class="org.apache.solr.schema.TrieLongField" name="TrieLongField"/> 
 
<fieldType class="org.apache.solr.schema.StrField" name="StrField"/> 
 
<fieldType class="org.apache.solr.schema.TextField" name="TextField"> 
 
<analyzer> 
 
<tokenizer class="solr.StandardTokenizerFactory"/> 
 
<filter class="solr.LowerCaseFilterFactory"/> 
 
</analyzer> 
 
</fieldType> 
 
<fieldType class="org.apache.solr.schema.UUIDField" name="UUIDField"/> 
 
</types> 
 
<fields> 
 
<field indexed="true" multiValued="false" name="party_id" stored="true" required="true" type="StrField" omitNorms="true" omitTermFreqAndPositions="true" docValues="true"/> 
 
<field indexed="true" multiValued="false" name="sh_coll_uuid" stored="true" required="true" type="UUIDField" omitNorms="true" omitTermFreqAndPositions="true" docValues="true"/> 
 
<field indexed="true" multiValued="false" name="ne_id" stored="true" required="true" type="StrField" omitNorms="true" omitTermFreqAndPositions="true" docValues="true"/> 
 
<field indexed="true" multiValued="false" name="businesskey" stored="true" required="true" type="StrField" omitNorms="true" omitTermFreqAndPositions="true" docValues="true"/> 
 
<field indexed="true" multiValued="false" name="clctor_id" stored="true" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="ifc_json" stored="true" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="neIpAddress" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="neHostName" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="ifcName" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="ifcType" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="ipAddress" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="macAddress" stored="false" type="StrField"/> 
 
<field indexed="true" multiValued="false" name="ipMask" stored="false" type="StrField"/> 
 
</fields> 
 
<uniqueKey>(party_id,sh_coll_uuid,ne_id,businesskey)</uniqueKey> 
 
</schema>

在此先感謝

回答

0

終於得到它的工作通過增加自動生成的場_uniqueKey的一部分FieldOutputTransformer獲得組合鍵值爲字符串數組