2016-09-26 10 views
1

インデックス付きのオブジェクトのフィールドをインデックスしようとしていますが、何らかの理由で更新されません。私は@IndexedEmbeddedで注釈を付けられた部分として便利な検索メソッドを持っていますが、私が索引付けしている他の属性は変更を引き起こすようです。私は何かが欠けているか分からない。私はそれがインデックスを更新し、でも実際に一見失われたmyBoolの更新を修正myEnum更新するとhibernate search @ContainedInはブール値フィールドでは機能しません

ClassA { 

    List<ClassB> myList = new ArrayList<>(); 

    @IndexedEmbedded 
    ClassB getNewestClassB() { 
     //sort by creationDate and return last 
    } 
} 

ClassB { 

    @Field 
    enum myEnum; 

    @Field 
    Boolean myBool; //Boolean to avoid null issues 

    @ContainedIn 
    ClassA 

    boolean getMyBool() { 
     if(myBool == null) 
      return false; 

     return myBool; 
    } 
} 

:ここでは基本的なconfiguraitonです。何らかの理由でnullの可能性があるかどうかを調べるために、フィールド自体とゲッターの両方に注釈を付けることを試みましたが、それは助けになりませんでした。私は両方でBooleanBridgeを使ってみましたが、そこに運がありません。

+0

こんにちはAndrew!私たちのテストケーステンプレートを使って、自己完結型のテストケースを書くことができますか:https://github.com/hibernate/hibernate-testcase-templates/tree/master/search/hibernate-search-lucene?ありがとう! –

+0

私は設定を開始します。ありがとう!また、私が言及していたことを忘れてしまったのは、5.3を必要とする古い休止状態のvesionを持つ私の春のブートのために、休止状態の検索5.3を使用していることです。 –

+0

これはおそらく汚れたチェック戦略のバグでしょう。 "hibernate.search.enable_dirty_check = false"を設定してこれらを無効にすることはできますか?それは少し効率が悪くなりますが、私はそれがあなたの問題を回避する(そして私たちがそれを狭めるのを助ける)と思います。 – Sanne

答えて

1

@AndrewRobieのおかげで、問題を追跡し修正することができました。

詳細については、https://hibernate.atlassian.net/browse/HSEARCH-2486を参照してください。

この修正は、次のリリースの一部になります:5.5.6.Finalと5.6.0.CR1。

関連する問題