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 71F6A10D9A for ; Mon, 12 Aug 2013 13:24:55 +0000 (UTC) Received: (qmail 66347 invoked by uid 500); 12 Aug 2013 13:24:49 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 66319 invoked by uid 500); 12 Aug 2013 13:24:49 -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 66298 invoked by uid 99); 12 Aug 2013 13:24:48 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 12 Aug 2013 13:24:48 +0000 Date: Mon, 12 Aug 2013 13:24:48 +0000 (UTC) From: "gautam (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-9108) LoadTestTool need to have a way to ignore keys which were failed during write. 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-9108?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] gautam updated HBASE-9108: -------------------------- Attachment: HBASE-9108.patch._trunk.7 Looks like things have changed a bit. This is with the latest changes. > LoadTestTool need to have a way to ignore keys which were failed during write. > ------------------------------------------------------------------------------- > > Key: HBASE-9108 > URL: https://issues.apache.org/jira/browse/HBASE-9108 > Project: HBase > Issue Type: Improvement > Components: test > Affects Versions: 0.95.0, 0.95.1, 0.94.9, 0.94.10 > Reporter: gautam > Assignee: gautam > Priority: Critical > Attachments: 9108.patch._trunk.5, 9108.patch._trunk.6, HBASE-9108.patch._trunk.2, HBASE-9108.patch._trunk.3, HBASE-9108.patch._trunk.4, HBASE-9108.patch._trunk.7 > > Original Estimate: 48h > Remaining Estimate: 48h > > While running the chaosmonkey integration tests, it is found that write sometimes fails when the cluster components are restarted/stopped/killed etc.. > The data key which was being put, using the LoadTestTool, is added to the failed key set, and at the end of the test, this failed key set is checked for any entries to assert failures. > While doing fail-over testing, it is expected that some of the keys may go un-written. The point here is to validate that whatever gets into hbase for an unstable cluster really goes in, and hence read should be 100% for whatever keys went in successfully. > Currently LoadTestTool has strict checks to validate every key being written or not. In case any keys is not written, it fails. > I wanted to loosen this constraint by allowing users to pass in a set of exceptions they expect when doing put/write operations over hbase. If one of these expected exception set is thrown while writing key to hbase, the failed key would be ignored, and hence wont even be considered again for subsequent write as well as read. > This can be passed to the load test tool as csv list parameter -allowed_write_exceptions, or it can be passed through hbase-site.xml by writing a value for "test.ignore.exceptions.during.write" > Here is the usage: > -allowed_write_exceptions "java.io.EOFException,org.apache.hadoop.hbase.NotServingRegionException,org.apache.hadoop.hbase.client.NoServerForRegionException,org.apache.hadoop.hbase.ipc.ServerNotRunningYetException" > Hence, by doing this the existing integration tests can also make use of this change by passing it as property in hbase-site.xml, as well. -- 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