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 B68E618B74 for ; Thu, 27 Aug 2015 06:45:46 +0000 (UTC) Received: (qmail 67293 invoked by uid 500); 27 Aug 2015 06:45:46 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 67251 invoked by uid 500); 27 Aug 2015 06:45:46 -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 67232 invoked by uid 99); 27 Aug 2015 06:45:46 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Aug 2015 06:45:46 +0000 Date: Thu, 27 Aug 2015 06:45:46 +0000 (UTC) From: "Chris Nauroth (JIRA)" To: issues@hbase.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (HBASE-14307) Incorrect use of positional read api in HFileBlock 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-14307?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Chris Nauroth updated HBASE-14307: ---------------------------------- Attachment: HBASE-14307.001.master.patch I am attaching a patch. This introduces a {{positionalReadWithExtra}} method that loops until completing the read. This is similar to the existing {{readWithExtra}} method that's used in the seek + read code path. I'm still looking into adding a unit test in {{TestHFileBlock}}. I verified that the existing tests in that suite pass. [~srevanka], would you be able to take this patch for a test run in your environment to verify that it works for your needs? Thanks! > Incorrect use of positional read api in HFileBlock > -------------------------------------------------- > > Key: HBASE-14307 > URL: https://issues.apache.org/jira/browse/HBASE-14307 > Project: HBase > Issue Type: Bug > Reporter: Shradha Revankar > Attachments: HBASE-14307.001.master.patch > > > Considering that {{read()}} is not guaranteed to read all bytes, > I'm interested to understand this particular piece of code and why is partial read treated as an error : > https://github.com/apache/hbase/blob/master/hbase-server/src/main/java/org/apache/hadoop/hbase/io/hfile/HFileBlock.java#L1446-L1450 > Particularly, if hbase were to use a different filesystem, say WebhdfsFileSystem, this would not work, please also see https://issues.apache.org/jira/browse/HDFS-8943 for discussion around this. -- This message was sent by Atlassian JIRA (v6.3.4#6332)