[
https://issues.apache.org/jira/browse/CASSANDRA-4050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13938446#comment-13938446
]
Joshua McKenzie commented on CASSANDRA-4050:
--------------------------------------------
After changing RAF over to nio.2-based I'm still seeing snapshot deletion
errors. A little digging turned up:
http://bugs.java.com/view_bug.do?bug_id=4715154
As this applies to deleting memory mapped files but not necessarily hard-links
with memory mapped segments in the original I figured I'd test it. I've
confirmed that if the original file has any data that's in a MappedByteBuffer
even if the original RAF it was associated with is closed, Windows refuses to
delete the hard-link.
Some local logging indicates that we have MmappedSegmentedFile Segments open on
the original keyspaces in question when deletion is attempted which isn't
surprising. The following implies that there *might* be a way around this but
it involves turning off all page caching for these files which isn't what we
want for SSTableReaders on Windows:
http://www.osronline.com/showThread.cfm?link=64732
> Unable to remove snapshot files on Windows while original sstables are live
> ---------------------------------------------------------------------------
>
> Key: CASSANDRA-4050
> URL: https://issues.apache.org/jira/browse/CASSANDRA-4050
> Project: Cassandra
> Issue Type: Bug
> Environment: Windows 7
> Reporter: Jim Newsham
> Assignee: Joshua McKenzie
> Priority: Minor
>
> I'm using Cassandra 1.0.8, on Windows 7. When I take a snapshot of the
> database, I find that I am unable to delete the snapshot directory (i.e., dir
> named "{datadir}\{keyspacename}\snapshots\{snapshottag}") while Cassandra is
> running: "The action can't be completed because the folder or a file in it
> is open in another program. Close the folder or file and try again" [in
> Windows Explorer]. If I terminate Cassandra, then I can delete the directory
> with no problem.
> I expect to be able to move or delete the snapshotted files while Cassandra
> is running, as this should not affect the runtime operation of Cassandra.
--
This message was sent by Atlassian JIRA
(v6.2#6252)