問題点

インスタンスが再起動しないので、Linux システムで次のメッセージが記録されます。

xx.xx.xxxx xx:xx:xx.xxx *ERROR* org.apache.jackrabbit.core.RepositoryImpl Failed to initialize workspace 'crx.default' javax.jcr.RepositoryException: Cannot instantiate persistence manager com.day.crx.persistence.tar.TarPe
rsistenceManager
at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.createPersistenceManager(CRXRepositoryImpl.java:1290)
at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.doInitialize(CRXRepositoryImpl.java:1307)
at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(RepositoryImpl.java:2002)
at org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(RepositoryImpl.java:517)
at com.day.crx.core.CRXRepositoryImpl.initStartupWorkspaces(CRXRepositoryImpl.java:428)
at org.apache.jackrabbit.core.RepositoryImpl.(RepositoryImpl.java:324)
at com.day.crx.core.CRXRepositoryImpl.(CRXRepositoryImpl.java:283)
at com.day.crx.core.CRXRepositoryImpl.create(CRXRepositoryImpl.java:258)
...
Caused by: java.io.IOException: Bad file descriptor
at java.io.RandomAccessFile.writeBytes(Native Method)
at java.io.RandomAccessFile.write(RandomAccessFile.java:469)
at com.day.crx.persistence.tar.file.TarFile.write(TarFile.java:736)
at com.day.crx.persistence.tar.file.TarFile.writeData(TarFile.java:629)
at com.day.crx.persistence.tar.file.TarFile.appendMetaData(TarFile.java:703)
at com.day.crx.persistence.tar.file.TarFile.append(TarFile.java:585)
at com.day.crx.persistence.tar.TarSet.switchDataFile(TarSet.java:443)
at com.day.crx.persistence.tar.TarSet.open(TarSet.java:225)
at com.day.crx.persistence.tar.ClusterTarSet.reopenCopy(ClusterTarSet.java:1413)
at com.day.crx.persistence.tar.ClusterTarSet.open(ClusterTarSet.java:828)
at com.day.crx.persistence.tar.TarPersistenceManager.openTarSet(TarPersistenceManager.java:963)
at com.day.crx.persistence.tar.TarPersistenceManager.init(TarPersistenceManager.java:494)
at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.createPersistenceManager(CRXRepositoryImpl.java:1286)
... 59 more
xx.xx.xxxx xx:xx:xx.xxx *ERROR* org.apache.jackrabbit.core.RepositoryImpl Unable to start repository, forcing shutdown...

 

または Windows の場合:

 

xx.xx.xxxx xx:xx:xx.xxx *ERROR* [FelixStartLevel] org.apache.jackrabbit.core.RepositoryImpl ワークスペース 'crx.default' javax.jcr.RepositoryException を初期化できませんでした:パーシスタンスマネージャー com.day.crx.persistence.tar.TarPersistenceManager at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.createPersistenceManager(CRXRepositoryImpl.java:1325) at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.doInitialize(CRXRepositoryImpl.java:1342) at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.initialize(RepositoryImpl.java:2002) at org.apache.jackrabbit.core.RepositoryImpl.initStartupWorkspaces(RepositoryImpl.java:517) at com.day.crx.core.CRXRepositoryImpl.initStartupWorkspaces(CRXRepositoryImpl.java:452) at org.apache.jackrabbit.core.RepositoryImpl をインスタンス化することはできません。(RepositoryImpl.java:324) at com.day.crx.core.CRXRepositoryImpl.(CRXRepositoryImpl.java:307) at com.day.crx.core.CRXRepositoryImpl.create(CRXRepositoryImpl.java:262) at com.day.crx.core.CRXRepositoryImpl.create(CRXRepositoryImpl.java:245) at com.day.crx.sling.server.impl.jmx.ManagedRepository.activate(ManagedRepository.java:168) ...

Caused by: java.io.IOException: Access is denied at java.io.RandomAccessFile.writeBytes(Native Method) at java.io.RandomAccessFile.write(Unknown Source) at com.day.crx.persistence.tar.file.TarFile.write(TarFile.java:742) at com.day.crx.persistence.tar.file.TarFile.writeData(TarFile.java:635) at com.day.crx.persistence.tar.file.TarFile.appendMetaData(TarFile.java:709) at com.day.crx.persistence.tar.file.TarFile.append(TarFile.java:591) at com.day.crx.persistence.tar.TarSet.switchDataFile(TarSet.java:445) at com.day.crx.persistence.tar.TarSet.open(TarSet.java:227) at com.day.crx.persistence.tar.ClusterTarSet.reopenCopy(ClusterTarSet.java:1455) at com.day.crx.persistence.tar.ClusterTarSet.open(ClusterTarSet.java:860) at com.day.crx.persistence.tar.TarPersistenceManager.openTarSet(TarPersistenceManager.java:980) at com.day.crx.persistence.tar.TarPersistenceManager.init(TarPersistenceManager.java:500) at com.day.crx.core.CRXRepositoryImpl$CRXWorkspaceInfo.createPersistenceManager(CRXRepositoryImpl.java:1321) ... 59 more

注意:

ログには、次のようなメッセージがあります。

*ERROR* com.day.crx.core.backup.LowDiskSpaceMonitor Missing file(s).ここでレポジトリが閉じられます。

「data*.tar files はセキュリティ上の理由から読み取り専用です」に関連する別のメッセージは(CRX バージョンおよびパッチによって)同じ時間の周りにも表示されます。

解決策

index_*.tar と data_*.tar のファイル間で一貫性が検出あれ、data*.tar files が読み取り専用の場合、メッセージがスローされます。

data_*.tar の設定を戻して、読み取り/書き出しします。以下の操作をおこないます。

ー Linux システムでは、cmmod コマンドを使用して、ファイルの権限を再度設定します。
ー Windows の場合、ファイルの「読み取り専用」属性を削除してください。

次に、index_*.tar ファイルを削除、レポジトリを設定し、一貫性チェック/修正モード(レポジトリと Lucene 検索インデックスの両方)で開始するように設定します。エラーが見つからない場合は、次の起動時に、一貫性チェック/修正を削除してください。

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

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