Return-Path: X-Original-To: apmail-aurora-dev-archive@minotaur.apache.org Delivered-To: apmail-aurora-dev-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id C7789102FD for ; Fri, 13 Dec 2013 20:06:29 +0000 (UTC) Received: (qmail 74031 invoked by uid 500); 13 Dec 2013 20:06:29 -0000 Delivered-To: apmail-aurora-dev-archive@aurora.apache.org Received: (qmail 74008 invoked by uid 500); 13 Dec 2013 20:06:29 -0000 Mailing-List: contact dev-help@aurora.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@aurora.incubator.apache.org Delivered-To: mailing list dev@aurora.incubator.apache.org Received: (qmail 74000 invoked by uid 99); 13 Dec 2013 20:06:29 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 13 Dec 2013 20:06:29 +0000 X-ASF-Spam-Status: No, hits=-1997.9 required=5.0 tests=ALL_TRUSTED,HTML_MESSAGE,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO mail.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 13 Dec 2013 20:06:26 +0000 Received: (qmail 73553 invoked by uid 99); 13 Dec 2013 20:06:04 -0000 Received: from reviews-vm.apache.org (HELO reviews.apache.org) (140.211.11.40) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 13 Dec 2013 20:06:04 +0000 Received: from reviews.apache.org (localhost [127.0.0.1]) by reviews.apache.org (Postfix) with ESMTP id 1AEC71D3E58; Fri, 13 Dec 2013 20:06:04 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============5051321078310573415==" MIME-Version: 1.0 Subject: Re: Review Request 16054: Rewrite SchedulerLifecycle, employing a state machine. From: "Maxim Khutornenko" To: "Zameer Manji" , "Kevin Sweeney" Cc: "Bill Farner" , "Maxim Khutornenko" , "Aurora" Date: Fri, 13 Dec 2013 20:06:04 -0000 Message-ID: <20131213200604.27438.59279@reviews.apache.org> X-ReviewBoard-URL: https://reviews.apache.org Auto-Submitted: auto-generated Sender: "Maxim Khutornenko" X-ReviewGroup: Aurora X-ReviewRequest-URL: https://reviews.apache.org/r/16054/ X-Sender: "Maxim Khutornenko" References: <20131213193954.2213.56851@reviews.apache.org> In-Reply-To: <20131213193954.2213.56851@reviews.apache.org> Reply-To: "Maxim Khutornenko" X-ReviewRequest-Repository: aurora X-Virus-Checked: Checked by ClamAV on apache.org --===============5051321078310573415== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/16054/#review30371 ----------------------------------------------------------- Ship it! Ship It! - Maxim Khutornenko On Dec. 13, 2013, 7:39 p.m., Bill Farner wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/16054/ > ----------------------------------------------------------- > > (Updated Dec. 13, 2013, 7:39 p.m.) > > > Review request for Aurora, Kevin Sweeney and Zameer Manji. > > > Repository: aurora > > > Description > ------- > > This change addresses two issues: > - Ensure leadership is canceled whenever onDefeated is called > - Scheduler should wait for registered to be called before attempting to invoke driver > > Some additional structural changes were made: > - Driver.run() is no longer used. Instead, we invoke Driver.start() (non-blocking), and the lifecycle uses Driver.join() to await exit. > This allows us to avoid jumping through thread-safety hoops in unit tests. > - A shim interface (DelayedActions) was added to SchedulerLifecycle to make testing easier when capturing delayed closures. > > > Diffs > ----- > > src/main/java/com/twitter/aurora/scheduler/Driver.java e8fe170b2d9e1a752b152cedc0e006f10eaa5a11 > src/main/java/com/twitter/aurora/scheduler/SchedulerLifecycle.java 346d52acc5fc9e4841e2dc8b424fc6d46d2cdc8c > src/main/java/com/twitter/aurora/scheduler/SchedulerModule.java bd7929d631cf45b4c2c7f39177bbafbd8f659071 > src/main/java/com/twitter/aurora/scheduler/app/SchedulerMain.java ec99e01dd4f982ed5b794ff86b65e6f58d2a0e27 > src/main/java/com/twitter/aurora/scheduler/storage/testing/StorageTestUtil.java ceef9d3bd4b43d2dcac0ab9129ae2b624ab654cf > src/test/java/com/twitter/aurora/scheduler/DriverTest.java 5609b0b8b9a26a737558316e8e4fab0235704cb8 > src/test/java/com/twitter/aurora/scheduler/SchedulerLifecycleTest.java PRE-CREATION > src/test/java/com/twitter/aurora/scheduler/app/SchedulerIT.java 4c381b946c8a3c7bbe1757d384d5d43dd74bb4d0 > > Diff: https://reviews.apache.org/r/16054/diff/ > > > Testing > ------- > > gradle clean build > > > Thanks, > > Bill Farner > > --===============5051321078310573415==--