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 ADD5118FA4 for ; Fri, 16 Oct 2015 03:47:05 +0000 (UTC) Received: (qmail 64498 invoked by uid 500); 16 Oct 2015 03:47:05 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 64463 invoked by uid 500); 16 Oct 2015 03:47:05 -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 64452 invoked by uid 99); 16 Oct 2015 03:47:05 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 16 Oct 2015 03:47:05 +0000 Date: Fri, 16 Oct 2015 03:47:05 +0000 (UTC) From: "Ariel Weisberg (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-10421) Potential issue with LogTransaction as it only checks in a single directory for files 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-10421?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14960123#comment-14960123 ] Ariel Weisberg commented on CASSANDRA-10421: -------------------------------------------- Syncing the directory won't sync the log file. You need sync the log file specifically to have that data be available. Syncing the directory makes rename and file creation durable, but not the files contained in the directory. bq. I also had to add several log.txnFile().close(); to the unit tests (whenever we test removeUnfinishedLeftovers) because on Windows we cannot delete files that are open. This is a bit ugly so maybe we should also go back to using FileUtils::appendLine, unless again you have performance concerns. I don't mind opening the file every time. > Potential issue with LogTransaction as it only checks in a single directory for files > ------------------------------------------------------------------------------------- > > Key: CASSANDRA-10421 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10421 > Project: Cassandra > Issue Type: Bug > Reporter: Marcus Eriksson > Assignee: Stefania > Priority: Blocker > Fix For: 3.0.0 rc2 > > > When creating a new LogTransaction we try to create the new logfile in the same directory as the one we are writing to, but as we use {{[directories.getDirectoryForNewSSTables()|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/lifecycle/LogTransaction.java#L125]}} this might end up in "any" of the configured data directories. If it does, we will not be able to clean up leftovers as we check for files in the same directory as the logfile was created: https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/db/lifecycle/LogRecord.java#L163 > cc [~Stefania] -- This message was sent by Atlassian JIRA (v6.3.4#6332)