Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 13D889DCD for ; Wed, 10 Dec 2014 21:36:19 +0000 (UTC) Received: (qmail 65545 invoked by uid 500); 10 Dec 2014 21:36:18 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 65503 invoked by uid 500); 10 Dec 2014 21:36:18 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 65468 invoked by uid 99); 10 Dec 2014 21:36:17 -0000 Received: from reviews-vm.apache.org (HELO reviews.apache.org) (140.211.11.40) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Dec 2014 21:36:17 +0000 Received: from reviews.apache.org (localhost [127.0.0.1]) by reviews.apache.org (Postfix) with ESMTP id 309661D233D; Wed, 10 Dec 2014 21:36:15 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============1519391865464646482==" MIME-Version: 1.0 Subject: Re: Review Request 28873: ACCUMULO-3393 Follow-on work for per-table volume chooser. From: "Jenna Huston" To: "Jenna Huston" Cc: "Mike Drob" , "Sean Busbey" , "accumulo" , "Christopher Tubbs" , "Josh Elser" Date: Wed, 10 Dec 2014 21:36:15 -0000 Message-ID: <20141210213615.5766.47864@reviews.apache.org> X-ReviewBoard-URL: https://reviews.apache.org Auto-Submitted: auto-generated Sender: "Jenna Huston" X-ReviewGroup: accumulo X-ReviewRequest-URL: https://reviews.apache.org/r/28873/ X-Sender: "Jenna Huston" References: <20141210075450.26419.35187@reviews.apache.org> In-Reply-To: <20141210075450.26419.35187@reviews.apache.org> Reply-To: "Jenna Huston" X-ReviewRequest-Repository: accumulo --===============1519391865464646482== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit > On Dec. 10, 2014, 7:54 a.m., Christopher Tubbs wrote: > > server/base/src/main/java/org/apache/accumulo/server/fs/PreferredVolumeChooser.java, line 99 > > > > > > Do we really need an object pool for a map which holds 0 or 1 element for the duration of a single, infrequently called method? A better optimization for this case would be to add an optimized get(String key) method to AccumuloConfiguration / TableConfiguration, so we don't have to use a map at all. > > Sean Busbey wrote: > This code path is in the critical section of tablet splitting, the frequency of which varies greatly based on system deployment. There's already a TODO for doing the refactoring you mention, which will allow us to later remove the pooling entirely. > > Josh Elser wrote: > I really don't see the creation of a new HashMap as being critical WRT the cost of waiting for a tablet to close, performing multiple metadata table updates and then waiting for the tablets to come back online. > > Sean Busbey wrote: > Am I correct that we currently don't have any microbenchmarks that would tell us one way or the other? > > Josh Elser wrote: > ditto what I said down below. > > Christopher Tubbs wrote: > As far as I know, we have not done any microbenchmarks on this. Which is why I suggested it was premature optimization. I agree that waiting for an optimized get method would be better in the long run. - Jenna ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/28873/#review64511 ----------------------------------------------------------- On Dec. 10, 2014, 2:58 p.m., Sean Busbey wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/28873/ > ----------------------------------------------------------- > > (Updated Dec. 10, 2014, 2:58 p.m.) > > > Review request for accumulo and Jenna Huston. > > > Bugs: ACCUMULO-3393 > https://issues.apache.org/jira/browse/ACCUMULO-3393 > > > Repository: accumulo > > > Description > ------- > > ACCUMULO-3393 Follow-on work for per-table volume chooser. > > Still has TODOs for additional tickets I need to file. I'll update the review to remove once I have them all filed. I think everything marked TODO can wait for a later ticket. Please comment on relevant section if you think something needs to be done now. > > * docs clean up + code guideline compliance. > * ensure RandomVolumeChoosers are independent when used per-table. > * make sure that per-table choosers can keep state the way that global choosers can > * make sure that a chooser can only pick from the options it is presented. > * avoid object creation in critical path for Tablet.split. > > > Diffs > ----- > > core/src/main/java/org/apache/accumulo/core/conf/Property.java 4c2d0b41b3bce32449861da3ac42fa27deb2b182 > pom.xml 31601a1bf84e19b861e4f48b50824eeb77987b52 > server/base/pom.xml c21a168dec2092692f1ee6877c4703ee2d3e3977 > server/base/src/main/java/org/apache/accumulo/server/fs/PerTableVolumeChooser.java 7a825c796eb5a25de8c748e2aba642f483697b9a > server/base/src/main/java/org/apache/accumulo/server/fs/PreferredVolumeChooser.java 7ed7bba809a4e5e4b2d472c3327b15adb37251a7 > server/base/src/main/java/org/apache/accumulo/server/fs/RandomVolumeChooser.java f2eb2113cb848ed58ac5f41573c6ff2cde9b0a77 > server/base/src/main/java/org/apache/accumulo/server/fs/VolumeChooser.java f523057b11a2dc42e82010675bb1ac8e3802f96d > server/base/src/main/java/org/apache/accumulo/server/fs/VolumeManager.java 890651e92f4c34514cb839b7b9ee9d23ad55070a > server/base/src/main/java/org/apache/accumulo/server/fs/VolumeManagerImpl.java dc1be739b634d91992894f8f27c2d9c184bd98cd > server/base/src/main/java/org/apache/accumulo/server/fs/VolumeUtil.java 877d01c2233cca086c1ac1539eb81cc282a7ceb4 > server/base/src/main/java/org/apache/accumulo/server/util/TabletOperations.java c0e1a9b991d61a4dbb127c74ae297f171434e7d5 > server/base/src/test/java/org/apache/accumulo/server/fs/VolumeManagerImplTest.java 582822a8ccbc398925a2184eed0b9d7fa853f9b4 > > Diff: https://reviews.apache.org/r/28873/diff/ > > > Testing > ------- > > Ran through VolumeManagerImplTest and VolumeChooserIT > > > Thanks, > > Sean Busbey > > --===============1519391865464646482==--