Return-Path: X-Original-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-hdfs-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0CFD492E5 for ; Fri, 25 May 2012 23:11:24 +0000 (UTC) Received: (qmail 34262 invoked by uid 500); 25 May 2012 23:11:23 -0000 Delivered-To: apmail-hadoop-hdfs-issues-archive@hadoop.apache.org Received: (qmail 34225 invoked by uid 500); 25 May 2012 23:11:23 -0000 Mailing-List: contact hdfs-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hdfs-issues@hadoop.apache.org Delivered-To: mailing list hdfs-issues@hadoop.apache.org Received: (qmail 34212 invoked by uid 99); 25 May 2012 23:11:23 -0000 Received: from issues-vm.apache.org (HELO issues-vm) (140.211.11.160) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 25 May 2012 23:11:23 +0000 Received: from isssues-vm.apache.org (localhost [127.0.0.1]) by issues-vm (Postfix) with ESMTP id 96A92142831 for ; Fri, 25 May 2012 23:11:23 +0000 (UTC) Date: Fri, 25 May 2012 23:11:23 +0000 (UTC) From: "Colin Patrick McCabe (JIRA)" To: hdfs-issues@hadoop.apache.org Message-ID: <1656501151.4389.1337987483619.JavaMail.jiratomcat@issues-vm> In-Reply-To: <1914024802.10546.1337748521074.JavaMail.jiratomcat@issues-vm> Subject: [jira] [Commented] (HDFS-3456) blockReportInterval is long value but when we take the random value it uses getRandom().nextInt,it is causing frequently BR 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/HDFS-3456?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13283804#comment-13283804 ] Colin Patrick McCabe commented on HDFS-3456: -------------------------------------------- Hi Nicholas, I appreciate you taking the time to look at this (minor) JIRA and the bugs you found in my code. I feel like there are a lot of issues similar to this lurking in the code where we cast between long and int. It is simply not a good practice to perform unchecked typecasts. The lack of a nextLong() method tends to produce this kind of code. For that reason alone, it would be a good addition to Hadoop-- don't you agree? Check out HDFS-2541, where we also needed a nextRandomLong, didn't have it, and ended up doing an (incorrect) typecast. The problem is more widespread than you think. Does that make sense at all? The alternative is to change a lot of our long configuration values to int, or introduce artificial maximum values for them. > blockReportInterval is long value but when we take the random value it uses getRandom().nextInt,it is causing frequently BR > --------------------------------------------------------------------------------------------------------------------------- > > Key: HDFS-3456 > URL: https://issues.apache.org/jira/browse/HDFS-3456 > Project: Hadoop HDFS > Issue Type: Bug > Components: data-node > Affects Versions: 2.0.0-alpha > Reporter: Brahma Reddy Battula > Assignee: Colin Patrick McCabe > Priority: Minor > Attachments: HDFS-3456.001.patch > > > blockReportInterval is long value but when we take the random value it uses getRandom().nextInt. > Due to this, offerService can throw exception as long may get rotated to negative value. > So, block report may send very frequently. > {code} > if (resetBlockReportTime) { > lastBlockReport = startTime - DFSUtil.getRandom().nextInt((int)(dnConf.blockReportInterval)); > resetBlockReportTime = false; > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira