問題点

AEM 6.0 または 6.1 から AEM 6.3 または 6.4 バージョンにアップグレードした後、ログに次のエラーが表示されます。

22.05.2018 16:48:19.289 *WARN* [async-index-update-async] org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor Failed to index the node [/home/users/a/admin/.tokens/2018-05-22T16.11.10.600-05.00]
java.lang.IllegalArgumentException: A SPI class of type org.apache.lucene.codecs.Codec with name 'Lucene3x' does not exist. You need to add the corresponding JAR file supporting this SPI to your classpath.The current classpath supports the following names: [Lucene40, Lucene41, Lucene42, Lucene45, Lucene46, oakCodec]
at org.apache.lucene.util.NamedSPILoader.lookup(NamedSPILoader.java:109)
at org.apache.lucene.codecs.Codec.forName(Codec.java:95)
at org.apache.lucene.index.SegmentInfos.read(SegmentInfos.java:370)
at org.apache.lucene.index.SegmentInfos$1.doBody(SegmentInfos.java:404)
at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:843)
at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:694)
at org.apache.lucene.index.SegmentInfos.read(SegmentInfos.java:400)
at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:746)
at org.apache.jackrabbit.oak.plugins.index.lucene.writer.DefaultIndexWriter.getWriter(DefaultIndexWriter.java:164)
at org.apache.jackrabbit.oak.plugins.index.lucene.writer.DefaultIndexWriter.updateDocument(DefaultIndexWriter.java:92)
at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.addOrUpdate(LuceneIndexEditor.java:250)
at org.apache.jackrabbit.oak.plugins.index.lucene.LuceneIndexEditor.leave(LuceneIndexEditor.java:140)
at org.apache.jackrabbit.oak.spi.commit.CompositeEditor.leave(CompositeEditor.java:74)
at org.apache.jackrabbit.oak.spi.commit.VisibleEditor.leave(VisibleEditor.java:63)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeAdded(EditorDiff.java:130)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:500)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
at org.apache.jackrabbit.oak.segment.MapRecord$2.childNodeChanged(MapRecord.java:401)
at org.apache.jackrabbit.oak.segment.MapRecord$3.childNodeChanged(MapRecord.java:442)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:490)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:433)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:391)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:555)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
at org.apache.jackrabbit.oak.segment.MapRecord$2.childNodeChanged(MapRecord.java:401)
at org.apache.jackrabbit.oak.segment.MapRecord$3.childNodeChanged(MapRecord.java:442)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:490)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:433)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:391)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:415)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
at org.apache.jackrabbit.oak.segment.MapRecord$2.childNodeChanged(MapRecord.java:401)
at org.apache.jackrabbit.oak.segment.MapRecord$3.childNodeChanged(MapRecord.java:442)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:490)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:433)
at org.apache.jackrabbit.oak.segment.MapRecord.compare(MapRecord.java:391)
at org.apache.jackrabbit.oak.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:608)
at org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52)
at org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.updateIndex(AsyncIndexUpdate.java:695)
at org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.runWhenPermitted(AsyncIndexUpdate.java:543)
at org.apache.jackrabbit.oak.plugins.index.AsyncIndexUpdate.run(AsyncIndexUpdate.java:402)
at org.apache.sling.commons.scheduler.impl.QuartzJobExecutor.execute(QuartzJobExecutor.java:118)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)

環境

AEM 6.0 または 6.1 から 6.3 または 6.4 へのアップグレード

原因

AEM のアップグレードでは、インデックス定義は自動的に更新されません。

解決策

  1. http://aem-host:port/crx/de/index.jsp に移動し、管理者ユーザーとしてログインします。
  2. /oak: index/lucene インデックスを削除します。
  3. AEM を再起動します。
  4. 新しい /oak: index/ のインデックス作成するためのログを監視します。luceneindex.

注意:

インデックス作成には時間がかかりません。ただし、アップグレードを正常に完了させる必要があります。

** Charu Jain のおかげで、アドビはこの製品の問題を特定することができました。

本作品は Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License によってライセンス許可を受けています。  Twitter™ および Facebook の投稿には、Creative Commons の規約内容は適用されません。

法律上の注意   |   プライバシーポリシー