Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Getting this error intermittently when trying to add a binary to filedatastore, ultimately throwing DataStoreException:
Caused by: org.apache.jackrabbit.core.data.DataStoreException: Could not add record at org.apache.jackrabbit.core.data.FileDataStore.addRecord(FileDataStore.java:230) [org.apache.jackrabbit.jackrabbit-data:2.18.3] at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.addRecord(DataStoreBlobStore.java:562) [org.apache.jackrabbit.oak-blob-plugins:1.10.6] at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeStream(DataStoreBlobStore.java:661) [org.apache.jackrabbit.oak-blob-plugins:1.10.6] at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeBlob(DataStoreBlobStore.java:237) [org.apache.jackrabbit.oak-blob-plugins:1.10.6] ... 13 common frames omitted Caused by: java.io.IOException: Can not rename /sb/env/aem/aem-primary/crx-quickstart/datastore/tmp8078245415384830382.tmp to /sb/env/aem/aem-primary/crx-quickstart/datastore/40/62/95/406295aa1c0ba2cc6d64c30ac22c101bd256f38fb5fd8a70d97578974e4c568c (media read only?)
Apparently the File.renameTo() method fails at [1]. I checked that using java.nio.file.Files.move() instead fixes the issue. So I propose to add Files.move as a fall back to File.renameTo.