----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/52691/#review152166 -----------------------------------------------------------
ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java (line 103) <https://reviews.apache.org/r/52691/#comment221000> This is a big patch, please give me some time to go through it. - Alejandro Fernandez On Oct. 11, 2016, 2:41 p.m., Sandor Magyari wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/52691/ > ----------------------------------------------------------- > > (Updated Oct. 11, 2016, 2:41 p.m.) > > > Review request for Ambari, Alejandro Fernandez, Jonathan Hurley, Laszlo > Puskas, Nate Cole, Sumit Mohanty, and Sebastian Toader. > > > Bugs: AMBARI-18553 > https://issues.apache.org/jira/browse/AMBARI-18553 > > > Repository: ambari > > > Description > ------- > > Today, the START commands stored in role_command_orders table are bound to > multiple stages created based on dependencies between components - a > component in the second stage can only begin its START after the entire first > stage is done as opposed to just its dependencies in the first stage. This > eventually increases the overall blueprint deployment time. > The goal is to be able to configure a direct dependency based execution model > of commands, for now only for Blueprint based deployment commands. > > Implementation: > --------------- > When creating stages we set the commandExecutionType to RoleGraph. In case > commandExecutionType is set to DEPENDENCY_ORDERED there's only one stage > created. commandExecutionType is persisted into Stage object / entity as > well, so ActionScheduler can decide based on commandExecutionType how to > execute the stage. In case commandExecutionType is set to DEPENDENCY_ORDERED > it will filter out commands having dependencies on other commands > IN_PROGRESS. By default commandExecutionType is STAGE_BASED which works as > before, creating one or more stages dependening on dependecies. > DEPENDENCY_ORDERED commandExecutionType is set only in case of START commands > initiated by Blueprint deployment and if Ambari property > server.stage.command.execution_type = DEPENDENCY_ORDERED. > > > Diffs > ----- > > > ambari-server/src/main/java/org/apache/ambari/server/actionmanager/ActionScheduler.java > e380ae4 > > ambari-server/src/main/java/org/apache/ambari/server/actionmanager/CommandExecutionType.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/actionmanager/Stage.java > f03d8ea > > ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java > 2e850ef > > ambari-server/src/main/java/org/apache/ambari/server/controller/AmbariManagementControllerImpl.java > 1fc9dbf > > ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java > 5afaba8 > > ambari-server/src/main/java/org/apache/ambari/server/metadata/CachedRoleCommandOrderProvider.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/metadata/RoleCommandOrder.java > bbdb808 > > ambari-server/src/main/java/org/apache/ambari/server/metadata/RoleCommandOrderProvider.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/orm/entities/StageEntity.java > 7659a23 > > ambari-server/src/main/java/org/apache/ambari/server/stageplanner/RoleGraph.java > c9ab6f9 > > ambari-server/src/main/java/org/apache/ambari/server/stageplanner/RoleGraphFactory.java > 625b168 > > ambari-server/src/main/java/org/apache/ambari/server/stageplanner/RoleGraphFactoryImpl.java > 5ca4d88 > > ambari-server/src/main/java/org/apache/ambari/server/upgrade/UpgradeCatalog250.java > 091c6d9 > ambari-server/src/main/resources/Ambari-DDL-Derby-CREATE.sql c2c965d > ambari-server/src/main/resources/Ambari-DDL-MySQL-CREATE.sql 1c17e1a > ambari-server/src/main/resources/Ambari-DDL-Oracle-CREATE.sql 49f3e2f > ambari-server/src/main/resources/Ambari-DDL-Postgres-CREATE.sql 7aa52ef > ambari-server/src/main/resources/Ambari-DDL-SQLAnywhere-CREATE.sql 0c95471 > ambari-server/src/main/resources/Ambari-DDL-SQLServer-CREATE.sql 631b5c4 > > ambari-server/src/test/java/org/apache/ambari/server/controller/KerberosHelperTest.java > b2eb738 > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ActiveWidgetLayoutResourceProviderTest.java > d38108f > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/StackUpgradeConfigurationMergeTest.java > 4f2580a > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserAuthorizationResourceProviderTest.java > 2ccbcda > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UserResourceProviderTest.java > d96e7b5 > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/ViewURLResourceProviderTest.java > e223d0f > > ambari-server/src/test/java/org/apache/ambari/server/metadata/RoleCommandOrderTest.java > a03f05b > > ambari-server/src/test/java/org/apache/ambari/server/metadata/RoleGraphTest.java > 8bead43 > > ambari-server/src/test/java/org/apache/ambari/server/stageplanner/TestStagePlanner.java > d26816c > > ambari-server/src/test/java/org/apache/ambari/server/state/cluster/ClusterEffectiveVersionTest.java > 2aaa2cf > > Diff: https://reviews.apache.org/r/52691/diff/ > > > Testing > ------- > > UT in progress. > Tested with manual cluster deployments. > > > Thanks, > > Sandor Magyari > >
