You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Thomas Mueller (JIRA)" <ji...@apache.org> on 2008/10/28 12:28:44 UTC

[jira] Commented: (JCR-1838) Garbage collection deletes temporary files in FileDataStore

    [ https://issues.apache.org/jira/browse/JCR-1838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12643186#action_12643186 ] 

Thomas Mueller commented on JCR-1838:
-------------------------------------

Hi,

Temporary files are only deleted if they are old. Is there anything special with your use case, for example: do you have a small repository (so that scanning it is very quick), or is streaming the data specially slow?

Regards,
Thomas


> Garbage collection deletes temporary files in FileDataStore
> -----------------------------------------------------------
>
>                 Key: JCR-1838
>                 URL: https://issues.apache.org/jira/browse/JCR-1838
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: jackrabbit-core
>    Affects Versions: core 1.4.6
>         Environment: Solaris 10, JDK 1.6.0_03
>            Reporter: Peter Dettman
>            Priority: Minor
>         Attachments: jcr1838.diff
>
>
> In FileDataStore.addRecord(InputStream), a temporary file is created. The data is written to the file and then it is moved to its final location (based on the contents hash).
> If the garbage collector runs whilst this temp file is present, it deletes it (on Solaris 10 at least), and the addRecord fails at the attempt to rename the now non-existent temp file.
> I am attaching a minimal patch that prevents these temp files being deleted by deleteOlderRecursive(..), regardless of their lastModified() value.
> I have made this a Minor priority, since there is the obvious workaround of disabling the GC.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.