2016-09-20 11 views
1

後、私は次の例外だ: java.lang.IllegalStateException:我々ティア中断せずに、しかしティアカウンターに応じて1つの以上のエントリがあるはずです。サイズは分かれていますか? net.openhft.chronicle.map.impl.CompiledMapIterationContext.forEachTierEntryWhile(CompiledMapIterationContext.java:3779) net.openhft.chronicle.map.impl.CompiledMapIterationContext.innerForEachSegmentEntryWhile(CompiledMapIterationContext.java:3791) net.openhft.chronicle.map .impl.CompiledMapIterationContext.forEachSegmentEntryWhile(CompiledMapIterationContext.java:3811) net.openhft.chronicle.map.impl.CompiledMapIterationContext.forEachSegmentEntry(CompiledMapIterationContext.java:3816) net.openhft.chronicle.map.ChronicleMapIterator.fillEntryBuffer(ChronicleMapIterator.java :61) net.openhft.chronicle.map.ChronicleMapIterator.hasNext(ChronicleMapIterator.java:77)クロニクル地図投げる例外の再起動

答えて

1

エラーメッセージクロニクルマップのメモリが壊れている場合はChronicleMapBuilder.recoverPersistedTo()を使用して回復し、もう一度繰り返してください。

あなたは「再起動」の下に何を意味するかを説明している場合には、今後このようなことを防ぐために本当に役立つだろう。 JVMプロセスの再起動、またはサーバーの再起動?いずれかの方法で再起動するために使用した信号またはコマンドは何ですか?

また、FYI Chronicle Map.forEach()またはforEachEntry()は、entrySet/keySey/values()。iterator()よりクロニクルマップを反復する方がずっと効率的です。

+0

これは、JVMプロセスの再起動です。 I HAVAはforEachの()またはforEachEntry()を試みたが、私はexcepiton得た:70738 [スケジューラ#3] ERROR net.openhft.chronicle.map.impl.CompiledMapIterationContext - このセグメントにロックコンテキスト: net.openhft.chronicle.mapを使用、セグメント6、ローカルの状態:.impl.CompiledMapIterationContext 1c1f0e2 @ UNLOCKED、ロック・カウント読み:0を、ロック・カウント更新:0 現在のスレッドコンテキスト: net.openhft.chronicle.map.impl 0を、ロック・カウントを書きます。 1c1f0e2 @ CompiledMapIterationContext:使用、セグメント6、地元の状態:UNLOCKED、ロック・カウント読み:0を、ロック・カウント更新:0 –

+0

ありがとう:0を、ロック・カウントを書きます。キル-9か協同組合? – leventov

関連する問題