Apache Jackrabbit
を使用して、PDF、docファイルを保存し、FileDataStore
を基本データストアとして使用しています。バイナリデータの値を設定すると、tempディレクトリに多くの一時/スプールファイル(bin * .tmp)が作成されます。 JVMがシャットダウンされるまで、これらのファイルは決して削除されません。これらの一時ファイルはtmpディレクトリに溢れており、結果としてno space left on device
エラーになります。私はAbstractQValue dispose()
を指すproperty.getBinary.dispose()
を、起動しようとした、そしてそれは空のメソッドであることを見つけるしているApache Jackrabbitで一時ファイルが削除されない
Node childFileNode = childLeafFolder.addNode(file.pdf, NodeType.NT_FILE);
Node childContentNode = childFileNode.addNode(Node.JCR_CONTENT,
NodeType.NT_RESOURCE);
Property property = childContentNode.setProperty(Property.JCR_DATA, binary);
:後
はコードスニペットです。
私はグーグルでJCR-3568に出くわしましたが、これは未だ解決されていません。私のアプリケーションは長い間実行され、頻繁にシャットダウンすることはできません。
これは非常に一般的な問題である可能性があるため、私はいくつか不足しているように見えます。
こんにちは、同じ問題に直面しています。デバイスにスペースが残っていません。誰でもどのバージョンでJCR-3568に対処するのかを提案できますか? –
ユニットテストを書く。バグを修正してください。パッチを提案する。オープンソースです。 –