0

Solr:4.8.1、A や C のような単一の文字を格納する age というフィールドがあり、格納されるのはフィールドです

<field name="age" type="text_general" indexed="true" stored="true"/>

他の検索から結果を取得すると、フィールド age とその値を確認できますが、たとえば検索するage:*と 0 件の結果が返されます。これは、私がこのフィールドを 1 か月間使用してきたときに最近発生したもので、正常に機能しましたが、何も返されません。スキーマを数回変更しましたが、このフィールドに関しては何もありません。考えられる唯一のことは、インポート元のmysqlデータベースのageフィールドに誤って無効な値を入力したことですが、それを修正して再インポートしたことです。

この問題を検索したところ、<defaultSearchField>設定する必要があることがわかりましたが、それらの結果は古く、そのフィールドは現在減価償却されています。

編集:

私のデータ構成は次のとおりです。

<dataConfig>
  <dataSource type="JdbcDataSource" 
              driver="com.mysql.jdbc.Driver"
              url="jdbc:mysql://localhost/gtw" 
              user="root" 
              password=""/>
  <document>
    <entity name="id" query="select id,price,title,description,main_image,retailer,link,age,gender,type,category,creation_date from solr_listings">
      <field column="category" name="category" splitBy=","></field>
    </entity>
  </document>
</dataConfig>

デフォルトのサンプル スキーマと異なるのは、以下に追加したフィールドだけです。

   <field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" />
   <field name="title" type="text_general" indexed="true" stored="true" />
   <field name="description" type="text_general" indexed="true" stored="true"/>
   <field name="retailer" type="text_general" indexed="true" stored="true"/>
   <field name="category" type="text_general" indexed="true" stored="true" />
   <field name="main_image" type="text_general" indexed="true" stored="true"/>
   <field name="last_modified" type="date" indexed="true" stored="true"/>
   <field name="link" type="string" indexed="true" stored="true" />
   <field name="gender" type="text_general" indexed="true" stored="true"/>
   <field name="age" type="text_general" indexed="true" stored="true"/>
   <field name="type" type="text_general" indexed="true" stored="true" />
   <field name="creation_date" type="date" indexed="true" stored="true" />
   <field name="price"  type="float" indexed="true" stored="true"/>
4

0 に答える 0