Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8C8CCCB0E for ; Wed, 12 Mar 2014 18:37:33 +0000 (UTC) Received: (qmail 40627 invoked by uid 500); 12 Mar 2014 18:37:32 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 40104 invoked by uid 500); 12 Mar 2014 18:37:21 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 40079 invoked by uid 99); 12 Mar 2014 18:37:20 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 12 Mar 2014 18:37:20 +0000 Date: Wed, 12 Mar 2014 18:37:20 +0000 (UTC) From: "stack (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-10514) Forward port HBASE-10466, possible data loss when failed flushes 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/HBASE-10514?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13932146#comment-13932146 ] stack commented on HBASE-10514: ------------------------------- Thanks for the review [~anoop.hbase] bq. So when one snapshot was already in place in MemStore and we again undergo a flush request, now we dont decrease by the begin time memstoreSize. But we check with all MemStores. Sorry. Having trouble parsing the above. Are you asking a question. Yes, if a snapshot is in place already, and we call flush -- we flush the existing snapshot only... that is how this stuff has always worked but our memory accounting did not reflect this... it would subtrace memstore size even though memstore was in place still post flush when existing snapshot. bq. Now the MemStore returns the previous snapshot's size when one was in place. The snapshot() to MemStore won't take new snaphot when already a snapshot is in place. Yes. This is how it works. This patch does not change that. This patch just makes our memory accounting align w/ how snapshotting/flush actually works. bq. ....When a flush requested while another was in progress.... Again pardon me for not following.... Only one flush can be going on at a time (you can make a request any time). I am not seeing how we can decrement twice the flush size. I can add new tests no problem if you can come up with a scenario. > Forward port HBASE-10466, possible data loss when failed flushes > ---------------------------------------------------------------- > > Key: HBASE-10514 > URL: https://issues.apache.org/jira/browse/HBASE-10514 > Project: HBase > Issue Type: Bug > Reporter: stack > Assignee: stack > Priority: Critical > Fix For: 0.96.2, 0.98.1, 0.99.0, 0.94.18 > > Attachments: 10514.txt, 10514v2.txt, 10514v3.txt, 10514v3.txt, 10514v4.txt > > > Critical data loss issues that we need to ensure are not in branches beyond 0.89fb. Assigning myself. -- This message was sent by Atlassian JIRA (v6.2#6252)