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 727B710331 for ; Fri, 13 Dec 2013 20:08:27 +0000 (UTC) Received: (qmail 82985 invoked by uid 500); 13 Dec 2013 20:08:27 -0000 Delivered-To: apmail-aurora-dev-archive@aurora.apache.org Received: (qmail 82968 invoked by uid 500); 13 Dec 2013 20:08:27 -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 82960 invoked by uid 99); 13 Dec 2013 20:08:27 -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:08:27 +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:08:24 +0000 Received: (qmail 80386 invoked by uid 99); 13 Dec 2013 20:08:02 -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:08:02 +0000 Received: from reviews.apache.org (localhost [127.0.0.1]) by reviews.apache.org (Postfix) with ESMTP id 780871D3E58; Fri, 13 Dec 2013 20:08:01 +0000 (UTC) Content-Type: multipart/alternative; boundary="===============7972750828377301099==" MIME-Version: 1.0 Subject: Re: Review Request 16054: Rewrite SchedulerLifecycle, employing a state machine. From: "Bill Farner" To: "Zameer Manji" , "Kevin Sweeney" Cc: "Bill Farner" , "Aurora" , "Maxim Khutornenko" Date: Fri, 13 Dec 2013 20:08:01 -0000 Message-ID: <20131213200801.27438.93157@reviews.apache.org> X-ReviewBoard-URL: https://reviews.apache.org Auto-Submitted: auto-generated Sender: "Bill Farner" X-ReviewGroup: Aurora X-ReviewRequest-URL: https://reviews.apache.org/r/16054/ X-Sender: "Bill Farner" References: <20131213194832.2213.19925@reviews.apache.org> In-Reply-To: <20131213194832.2213.19925@reviews.apache.org> Reply-To: "Bill Farner" X-ReviewRequest-Repository: aurora X-Virus-Checked: Checked by ClamAV on apache.org --===============7972750828377301099== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit > On Dec. 13, 2013, 7:48 p.m., Kevin Sweeney wrote: > > Do you mind adding a stat for the current state? Something like > > > > scheduler_lifecycle_state_RUNNING 1 > > scheduler_lifecycle_state_* 0 > > Maxim Khutornenko wrote: > +1 A fine suggestion, done. - Bill ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/16054/#review30365 ----------------------------------------------------------- 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 > > --===============7972750828377301099==--