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 223C9F2DE for ; Sun, 7 Apr 2013 00:19:18 +0000 (UTC) Received: (qmail 74911 invoked by uid 500); 7 Apr 2013 00:19:17 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 74877 invoked by uid 500); 7 Apr 2013 00:19:17 -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 74869 invoked by uid 99); 7 Apr 2013 00:19:17 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 07 Apr 2013 00:19:17 +0000 Date: Sun, 7 Apr 2013 00:19:17 +0000 (UTC) From: "Hudson (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (HBASE-8208) In some situations data is not replicated to slaves when deferredLogSync is enabled 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-8208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13624543#comment-13624543 ] Hudson commented on HBASE-8208: ------------------------------- Integrated in hbase-0.95 #130 (See [https://builds.apache.org/job/hbase-0.95/130/]) HBASE-8208 In some situations data is not replicated to slaves when deferredLogSync is enabled (Jeffrey Zhong) (Revision 1465175) Result = SUCCESS larsh : Files : * /hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java * /hbase/branches/0.95/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/wal/FSHLog.java > In some situations data is not replicated to slaves when deferredLogSync is enabled > ----------------------------------------------------------------------------------- > > Key: HBASE-8208 > URL: https://issues.apache.org/jira/browse/HBASE-8208 > Project: HBase > Issue Type: Bug > Affects Versions: 0.95.0, 0.98.0, 0.94.6 > Reporter: Jeffrey Zhong > Assignee: Jeffrey Zhong > Fix For: 0.95.1, 0.98.0, 0.94.7 > > Attachments: hbase-8208-0.94.patch, hbase-8208.patch, hbase-8208-v1.patch, hbase-8208_v2.patch > > > This is a subtle issue. When deferredLogSync is enabled, there are chances we could flush data before syncing all HLog entries. Assuming we just flush the internal cache and the server dies with some unsynced hlog entries. > Data is not lost at the source cluster while replication is based on WAL files and some changes we flushed at the source won't be replicated the slave clusters. > Although enabling deferredLogSync with tolerances of data loss, it breaks the replication assumption that whatever persisted in the source should be replicated to its slave clusters. > In short, the slave cluster could end up with double losses: the data loss in the source and some data stored in source cluster may not be replicated to slaves either. > The fix of the issue isn't hard. Basically we can invoke sync during each flush when replication is enabled for a region server. Since sync returns immediately when nothing to sync so there should be no performance impact. > Please let me know what you think! > Thanks, > -Jeffrey -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira