Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id AEB131075C for ; Wed, 19 Feb 2014 23:30:21 +0000 (UTC) Received: (qmail 50670 invoked by uid 500); 19 Feb 2014 23:30:20 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 50595 invoked by uid 500); 19 Feb 2014 23:30:20 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 50585 invoked by uid 99); 19 Feb 2014 23:30:20 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 19 Feb 2014 23:30:20 +0000 Date: Wed, 19 Feb 2014 23:30:20 +0000 (UTC) From: "Joshua McKenzie (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-6283) Windows 7 data files keept open / can't be deleted after compaction. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CASSANDRA-6283?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13906272#comment-13906272 ] Joshua McKenzie commented on CASSANDRA-6283: -------------------------------------------- Looks like that's the case, though the documentation for DeleteFile (http://msdn.microsoft.com/en-us/library/windows/desktop/aa363915(v=vs.85).aspx) doesn't indicate anything about hard links to open files being non-deletable. Every use case I'm digging up shows that that's the case however: http://superuser.com/questions/678357/how-to-delete-windows-ntfs-hard-link-mklink-h-while-original-is-in-use There's an ecosystem of tools surrounding working around this type of thing on Windows - PendMoves and MoveFile from sysinternals, for instance We could go a route similar to FileUtils.closeQuietly with a FileUtils.deleteQuietly or removeHardLink to more clearly communicate intent, try to delete it, move it to a tmp location if failure, and then either periodically retry delete on the links or remove them at shutdown. > Windows 7 data files keept open / can't be deleted after compaction. > -------------------------------------------------------------------- > > Key: CASSANDRA-6283 > URL: https://issues.apache.org/jira/browse/CASSANDRA-6283 > Project: Cassandra > Issue Type: Bug > Components: Core > Environment: Windows 7 (32) / Java 1.7.0.45 > Reporter: Andreas Schnitzerling > Assignee: Joshua McKenzie > Labels: compaction > Fix For: 2.0.6 > > Attachments: leakdetect.patch, screenshot-1.jpg, system.log > > > Files cannot be deleted, patch CASSANDRA-5383 (Win7 deleting problem) doesn't help on Win-7 on Cassandra 2.0.2. Even 2.1 Snapshot is not running. The cause is: Opened file handles seem to be lost and not closed properly. Win 7 blames, that another process is still using the file (but its obviously cassandra). Only restart of the server makes the files deleted. But after heavy using (changes) of tables, there are about 24K files in the data folder (instead of 35 after every restart) and Cassandra crashes. I experiminted and I found out, that a finalizer fixes the problem. So after GC the files will be deleted (not optimal, but working fine). It runs now 2 days continously without problem. Possible fix/test: > I wrote the following finalizer at the end of class org.apache.cassandra.io.util.RandomAccessReader: > {code:title=RandomAccessReader.java|borderStyle=solid} > @Override > protected void finalize() throws Throwable { > deallocate(); > super.finalize(); > } > {code} > Can somebody test / develop / patch it? Thx. -- This message was sent by Atlassian JIRA (v6.1.5#6160)