> On March 8, 2016, 2:28 p.m., Jonathan Hurley wrote: > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeSummary.java, > > line 25 > > <https://reviews.apache.org/r/44492/diff/2/?file=1290960#file1290960line25> > > > > This UpgradeSummary class kind of assumes a failure. Perhaps it > > shouldn't? Or maybe we need a better layer of abstraction here. The summary > > of an upgrade could be a success, right? In which case it wouldn't have > > things like a taskId or stageId. > > Alejandro Fernandez wrote: > I tried adding a failed_task subresource and I had a hard time getting > all of the boilerplate code added. > > Jonathan Hurley wrote: > But this isn't really a summary, then. It's a failure only. If you don't > want to go the subresource route, then maybe change this to reflect that > you're only exposing an error condition. On a completed upgrade, it there > won't be a summary. Maybe call it UpgradeFailureSummary? I dunno; but we > should try to model this data bit better so that it represents either a > failure or is flexible enough to represent both a failure and a success.
I got it working by just using a failed_task subelement in the json instead of a TaskSubresource. Much simpler since I don't actually need to query on it. Thanks for the tip! - Alejandro ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/44492/#review122518 ----------------------------------------------------------- On March 10, 2016, 10:48 p.m., Alejandro Fernandez wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/44492/ > ----------------------------------------------------------- > > (Updated March 10, 2016, 10:48 p.m.) > > > Review request for Ambari, Dmytro Grinenko, Dmitro Lisnichenko, Jonathan > Hurley, Nate Cole, and Sid Wagle. > > > Bugs: AMBARI-15330 > https://issues.apache.org/jira/browse/AMBARI-15330 > > > Repository: ambari > > > Description > ------- > > During RU/EU, need a way to bubble up an error of the current item that > failed. This is useful to quickly get a human-readable error that others UIs > can quickly retrieve. > It can print a human-readable error, plus stdout and stderr. > This would become part of the upgrade endpoint. e.g, > api/v1/clusters/$name/upgrade_summary/$request_id > > ``` > { > > cluster_name: "c1", > request_id: 1, > fail_reason: "Failed calling RESTART ZOOKEEPER/ZOOKEEPER_SERVER on host > c6401.ambari.apache.org", > > // Notice that the rest are inherited from the failed task if it exists. > attempt_cnt: 1, > command: "CUSTOM_COMMAND", > command_detail: "RESTART ZOOKEEPER/ZOOKEEPER_SERVER", > custom_command_name: "RESTART", > end_time: -1, > error_log: "/var/lib/ambari-agent/data/errors-1234.txt", > exit_code: 1, > host_name: "c6401.ambari.apache.org", > id: 1234, > output_log: "/var/lib/ambari-agent/data/output-1234.txt", > role: "ZOOKEEPER_SERVER", > stage_id: 1, > start_time: 123456789, > status: "HOLDING_FAILED", > stdout: "", > stderr: "" > } > ``` > > > Diffs > ----- > > > ambari-server/src/main/java/org/apache/ambari/server/actionmanager/HostRoleStatus.java > 52523c7 > > ambari-server/src/main/java/org/apache/ambari/server/api/resources/ResourceInstanceFactoryImpl.java > 3526e23 > > ambari-server/src/main/java/org/apache/ambari/server/api/services/ClusterService.java > 7200b83 > > ambari-server/src/main/java/org/apache/ambari/server/api/services/UpgradeSummaryService.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/DefaultProviderModule.java > d1d3fe6 > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/TaskResourceProvider.java > 510d6fb > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeSummary.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/controller/internal/UpgradeSummaryResourceProvider.java > PRE-CREATION > > ambari-server/src/main/java/org/apache/ambari/server/controller/spi/Resource.java > e79f300 > > ambari-server/src/main/java/org/apache/ambari/server/orm/dao/HostRoleCommandDAO.java > b48ffa8 > > ambari-server/src/main/java/org/apache/ambari/server/orm/entities/HostRoleCommandEntity.java > 1674175 > > ambari-server/src/main/java/org/apache/ambari/server/state/UpgradeHelper.java > 2ac4d25 > > ambari-server/src/test/java/org/apache/ambari/server/controller/internal/UpgradeSummaryResourceProviderTest.java > PRE-CREATION > > Diff: https://reviews.apache.org/r/44492/diff/ > > > Testing > ------- > > Verified on RU and EU by introducing a failure. > Waiting for unit test results. > > > Thanks, > > Alejandro Fernandez > >
