- Clinton Gormley
- April 16, 2014
Lucene 4.7.2 ベースの Elasticsearch 1.1.1, Lucene 4.6.1 ベースの Elasticsearch 1.0.3 をリリースしました。
どちらのリリースにも重大なバグフィックスが含まれていますが1.0系を使う特別な理由が無い限りは1.1.1にバージョンアップすることをおすすめします。
fielddata circuit breaker は OutOfMemory を避けるために、メモリに収まらないフィールドデータをロードしないよう追加されました。
この新機能は、二つの問題を露呈しました。
1つ目はパーコレーション リクエストがパーコレーション(#5588)の後にフィールドデータの状態をクリーンしていないことです。
二つ目は、そのフィールドデータのクリーンアップが時折フィールドデータとフィルタのメモリリークにつながる可能性がすでにクローズまたは再配置されたセグメント上で起こっていなかったでした。(#5825)。
Luceneのバグにより以前に割り当てられたのと同じディレクトリにシャードを再割当した時にインデックスを破壊する可能性がありました。
これは Lucene (#5574,#5570)で修正され、elasticsearchは失敗したシャードが同じノードに割当されないよう対応中です。#5725
全てのシャードがまだ起動していない状態で新しいインデックスにバルクインデクシングした時、動的に生成されたマッピングはマスターノードに送信されないことが可能だった。
これはクラスタが再起動された時に未定義フィールドやインデックスの破損をもたらす。
同様の問題は、パーコレーション(#5776)で修正されました。
v1.1.0で 多くのマージスレッドを作成しないように concurrent merge scheduler
から serial merge scheduler
を使うように切り替えた。
残念ながら、これはインデクシングのパフォーマンスに影響を与えたため concurrent merge scheduler
に戻した。 #5817
この問題は将来的に再検討されます。
これらの問題を明確にするための多くのバグレポートありがとうございました。
私たちは強く Elasticsearch 1.1.1 へのアップグレードをお勧めします。 1.0.0以降のElasticsearchのどのバージョンからもローリングアップデートができます。
なにか問題があれば Github issues に報告してください。