環境
- Liferay DXP 7.3、7.4、およびLiferay DXP 2023/2024四半期リリースセルフホスト環境では、Elasticsearchバージョン7.17.19、JDK 22で動作します。
- Elasticsearch バージョン 7.17.19、バージョン 8.13.0/8.13.11- JDK 22。
症状
1) JDK 22でElasticsearchが突然停止することがある
1つまたは複数のElasticsearchノードが突然停止し、以下の症状が発生する可能性があります(リストは完全ではありません):
- アップグレードの失敗
- Elasticsearch ノードまたはノードのブートループを開始できません。
- インデックス作成/検索リクエストの失敗
- 未割り当てのシャード(例:黄色/赤のクラスター)
- データ破損の可能性(JDK22のバグをエンコードした後の奇妙なセグメント状態)
2) ElasticsearchノードがJavaクラスLjdk.internal.vm.FillerArrayに関する 致命的なエラーを報告する。 以下に例を示します。
[instance-0000000027] fatal error in thread [elasticsearch[instance-0000000027][refresh][T#4]], exiting
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map
at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.java:437) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.engine.InternalEngine.pruneDeletedTombstones(InternalEngine.java:2378) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.engine.InternalEngine.maybePruneDeletes(InternalEngine.java:1924) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3940) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.1.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1570) ~[?:?]
[スレッド[elasticsearch[instance-0000000027][refresh][T#4]]で致命的なエラーが発生し、java.lang.IncompatibleClassChangeErrorが終了しました:class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.java:437) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.InternalEngine.pruneDeletedTombstones(InternalEngine.java:2378) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.InternalEngine.maybePruneDeletes(InternalEngine.java:1924) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3940) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexShard.scheduledRefresh(IndexShard.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.1.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?] at java.lang.Thread.run(Thread.java:1570) ~[?:?] ~[?:?
[スレッド[elasticsearch[instance-0000000027][refresh][T#4]]で致命的なエラーが発生し、java.lang.IncompatibleClassChangeErrorが終了しました:class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.java:437) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.InternalEngine.pruneDeletedTombstones(InternalEngine.java:2378) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.InternalEngine.maybePruneDeletes(InternalEngine.java:1924) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3940) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexShard.scheduledRefresh(IndexShard.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.1.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?] at java.lang.Thread.run(Thread.java:1570) ~[?:?] ~[?:?
[スレッド[elasticsearch[instance-0000000027][refresh][T#4]]で致命的なエラーが発生し、java.lang.IncompatibleClassChangeErrorが終了しました:class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.java:437) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.InternalEngine.pruneDeletedTombstones(InternalEngine.java:2378) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.InternalEngine.maybePruneDeletes(InternalEngine.java:1924) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3940) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.index.IndexShard.scheduledRefresh(IndexShard.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.1.jar:?] at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.1.jar:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?] at java.lang.Thread.run(Thread.java:1570) ~[?:?] ~[?:?
3) この問題は異なるコード・パスで発生する可能性があるので、これまでに観察されたスタック・トレースの断片を以下に示す:
java.lang.ClassCastException: class Ljdk.internal.vm.FillerArray; cannot be cast to class
java.nio.ByteBuffer (Ljdk.internal.vm.FillerArray; and java.nio.ByteBuffer are in module java.base of loader 'bootstrap')
at io.netty.buffer@4.1.107.Final/io.netty.buffer.PoolChunk.allocate(PoolChunk.java:354)
at io.netty.buffer@4.1.107.Final/io.netty.buffer.PoolChunkList.allocate(PoolChunkList.java:108)
at io.netty.buffer@4.1.107.Final/io.netty.buffer.PoolArena.allocateNormal(PoolArena.java:204)
...
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.concurrent.locks.Lock
at org.elasticsearch.common.util.concurrent.ReleasableLock.acquire(ReleasableLock.java:43) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.translog.Translog.add(Translog.java:578) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.index(InternalEngine.java:1223) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.index(IndexShard.java:1072) ~[elasticsearch-8.13.0.jar:?]
...
java.lang.ClassCastException: class Ljdk.internal.vm.FillerArray; cannot be cast to class org.elasticsearch.index.engine.LiveVersionMap$VersionLookup (Ljdk.internal.vm.FillerArray; is in module java.base of loader 'bootstrap'; org.elasticsearch.index.engine.LiveVersionMap$VersionLookup is in module org.elasticsearch.server@8.14.0 of loader 'app')
at org.elasticsearch.stateless@8.14.0/co.elastic.elasticsearch.stateless.engine.StatelessLiveVersionMapArchive.getRamBytesUsed(StatelessLiveVersionMapArchive.java:156)
at org.elasticsearch.server@8.14.0/org.elasticsearch.index.engine.LiveVersionMap.ramBytesUsedForRefresh(LiveVersionMap.java:483)
at org.elasticsearch.server@8.14.0/org.elasticsearch.index.engine.InternalEngine.getIndexBufferRAMBytesUsed(InternalEngine.java:2573)
at org.elasticsearch.server@8.14.0/org.elasticsearch.index.shard.IndexShard.getIndexBufferRAMBytesUsed(IndexShard.java:2355)
...
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map
at org.apache.lucene.core@9.10.0/org.apache.lucene.index.ReadersAndUpdates.getNumDVUpdates(ReadersAndUpdates.java:168)
at org.apache.lucene.core@9.10.0/org.apache.lucene.index.ReaderPool.anyDocValuesChanges(ReaderPool.java:384)
at org.apache.lucene.core@9.10.0/org.apache.lucene.index.IndexWriter.nrtIsCurrent(IndexWriter.java:5776)
at org.apache.lucene.core@9.10.0/org.apache.lucene.index.StandardDirectoryReader.isCurrent(StandardDirectoryReader.java:455)
at org.apache.lucene.core@9.10.0/org.apache.lucene.index.FilterDirectoryReader.isCurrent(FilterDirectoryReader.java:133)
at org.elasticsearch.server@8.14.0/org.elasticsearch.index.engine.Engine.refreshNeeded(Engine.java:1093)
...
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map
at org.elasticsearch.index.engine.LiveVersionMap.pruneTombstones(LiveVersionMap.java:437) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.engine.InternalEngine.pruneDeletedTombstones(InternalEngine.java:2378) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.engine.InternalEngine.maybePruneDeletes(InternalEngine.java:1924) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3940) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.index.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.1.jar:?]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.1.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1570) ~[?:?]
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Map
at org.apache.lucene.codecs.perfield.PerFieldPostingsFormat$FieldsReader.terms(PerFieldPostingsFormat.java:353) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.CodecReader.terms(CodecReader.java:132) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.FilterLeafReader.terms(FilterLeafReader.java:415) ~[lucene-core-9.10.0.jar:?]
at org.elasticsearch.common.lucene.uid.PerThreadIDVersionAndSeqNoLookup.<init>(PerThreadIDVersionAndSeqNoLookup.java:68) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.lucene.uid.PerThreadIDVersionAndSeqNoLookup.<init>(PerThreadIDVersionAndSeqNoLookup.java:111) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.lucene.uid.VersionsAndSeqNoResolver.getLookupState(VersionsAndSeqNoResolver.java:66) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.lucene.uid.VersionsAndSeqNoResolver.timeSeriesLoadDocIdAndVersion(VersionsAndSeqNoResolver.java:140) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.resolveDocVersion(InternalEngine.java:1021) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.planIndexingAsPrimary(InternalEngine.java:1333) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.indexingStrategyForOperation(InternalEngine.java:1310) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.index(InternalEngine.java:1172) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.index(IndexShard.java:1072) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.applyIndexOperation(IndexShard.java:997) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.applyIndexOperationOnPrimary(IndexShard.java:915) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.bulk.TransportShardBulkAction.executeBulkItemRequest(TransportShardBulkAction.java:378) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.bulk.TransportShardBulkAction$2.doRun(TransportShardBulkAction.java:235) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.bulk.TransportShardBulkAction.performOnPrimary(TransportShardBulkAction.java:305) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.bulk.TransportShardBulkAction.dispatchedShardOperationOnPrimary(TransportShardBulkAction.java:151) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.bulk.TransportShardBulkAction.dispatchedShardOperationOnPrimary(TransportShardBulkAction.java:79) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.support.replication.TransportWriteAction$1.doRun(TransportWriteAction.java:216) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.TimedRunnable.doRun(TimedRunnable.java:33) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:984) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:26) ~[elasticsearch-8.13.0.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1570) ~[?:?]
java.lang.IncompatibleClassChangeError: Class Ljdk.internal.vm.FillerArray; does not implement the requested interface java.util.Collection
at org.apache.lucene.index.ReadersAndUpdates.writeFieldUpdates(ReadersAndUpdates.java:554) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.ReaderPool.writeAllDocValuesUpdates(ReaderPool.java:251) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.IndexWriter.writeReaderPool(IndexWriter.java:3982) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.IndexWriter.getReader(IndexWriter.java:598) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.StandardDirectoryReader.doOpenFromWriter(StandardDirectoryReader.java:381) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:355) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:345) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.FilterDirectoryReader.doOpenIfChanged(FilterDirectoryReader.java:112) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.index.DirectoryReader.openIfChanged(DirectoryReader.java:170) ~[lucene-core-9.10.0.jar:?]
at org.elasticsearch.index.engine.ElasticsearchReaderManager.refreshIfNeeded(ElasticsearchReaderManager.java:48) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.ElasticsearchReaderManager.refreshIfNeeded(ElasticsearchReaderManager.java:27) ~[elasticsearch-8.13.0.jar:?]
at org.apache.lucene.search.ReferenceManager.doMaybeRefresh(ReferenceManager.java:167) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.search.ReferenceManager.maybeRefreshBlocking(ReferenceManager.java:240) ~[lucene-core-9.10.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine$ExternalReaderManager.refreshIfNeeded(InternalEngine.java:461) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine$ExternalReaderManager.refreshIfNeeded(InternalEngine.java:441) ~[elasticsearch-8.13.0.jar:?]
at org.apache.lucene.search.ReferenceManager.doMaybeRefresh(ReferenceManager.java:167) ~[lucene-core-9.10.0.jar:?]
at org.apache.lucene.search.ReferenceManager.maybeRefresh(ReferenceManager.java:213) ~[lucene-core-9.10.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.refresh(InternalEngine.java:2047) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.lambda$maybeRefresh$8(InternalEngine.java:2020) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.ActionListener.completeWith(ActionListener.java:270) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.engine.InternalEngine.maybeRefresh(InternalEngine.java:2020) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.lambda$scheduledRefresh$47(IndexShard.java:3935) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.action.ActionListener.run(ActionListener.java:356) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.shard.IndexShard.scheduledRefresh(IndexShard.java:3915) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.IndexService.maybeRefreshEngine(IndexService.java:998) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.index.IndexService$AsyncRefreshTask.runInternal(IndexService.java:1134) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.AbstractAsyncTask.run(AbstractAsyncTask.java:137) ~[elasticsearch-8.13.0.jar:?]
at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingRunnable.run(ThreadContext.java:917) ~[elasticsearch-8.13.0.jar:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
at java.lang.Thread.run(Thread.java:1570) ~[?:?]
原因
この問題は、8.13.0にアップグレード後、java.lang.ClassCastException: class Ljdk.internal.vm.FillerArray; cannot be cast to classでElastic社により調査中です。
回避策
- Liferay Self-hosted 環境の場合: ユーザーは代わりに JDK バージョン 21.0.2 をインストールして使用することができます (see:Java (JVM) Verssion)。 決議案が用意されている(下記参照)。
- Liferay SaasおよびPaas環境の場合:アクションは必要ありません。
解像度
Elasticsearch 7.17.20にはJDK 21.0.2がバンドルされています(バンドルされているJDKをJDK 21.0.2にダウングレードしてください)。
1Elasticsearch 8.13.xは現在、Liferay環境と互換性のある検索エンジンのバージョンではありません。 互換性テストは2024年第2四半期に実施される予定だ。
Elastic、Elasticsearch、X-Packは、米国で登録されたElasticsearch BVの商標です。 そして他の国々でも。