Permalink
Browse files

[FLINK-4410] [runtime-web] Rebuild JS/HTML files

This closes #3042.
  • Loading branch information...
1 parent 27df801 commit 536e4b3525c8c95b41df4da127b9d53f23d9ccb2 @uce uce committed Dec 23, 2016
@@ -569,6 +569,18 @@ livechart {
font-family: inherit;
margin-top: -2px;
}
+.checkpoints-view {
+ padding-top: 1em;
+}
+.subtask-details .blank {
+ height: 2em;
+}
+.checkpoint-overview td span {
+ padding-left: 2em;
+}
+.checkpoint-overview a {
+ color: #000;
+}
svg.graph {
overflow: hidden;
height: 100%;
Oops, something went wrong.
@@ -17,32 +17,15 @@
limitations under the License.
-->
-<div ng-if="!jobCheckpointStats">
- <p><em>No checkpoints</em></p>
-</div>
-<div ng-if="jobCheckpointStats">
- <h2>Overview</h2>
- <div ng-include=" 'partials/jobs/job.plan.node.checkpoints.job.html' "></div>
- <h2>Operators</h2>
- <table class="table table-body-hover table-clickable table-activable">
- <thead>
- <tr>
- <th>Name</th>
- <th>Status</th>
- </tr>
- </thead>
- <tbody ng-repeat="v in job.vertices" ng-class="{ active: v.id == nodeid }" ng-click="v.id == nodeid || changeNode(v.id)">
- <tr ng-if="v.type == 'regular'">
- <td>{{ v.name | humanizeText }}</td>
- <td>
- <bs-label status="{{v.status}}">{{v.status}}</bs-label>
- </td>
- </tr>
- <tr ng-if="nodeid &amp;&amp; v.id == nodeid">
- <td colspan="10">
- <div ng-include=" 'partials/jobs/job.plan.node.checkpoints.operator.html' "></div>
- </td>
- </tr>
- </tbody>
- </table>
+<div class="split">
+ <nav class="navbar navbar-default navbar-secondary-additional">
+ <ul class="nav nav-tabs">
+ <li ui-sref-active="active"><a ui-sref=".overview">Overview</a></li>
+ <li ui-sref-active="active"><a ui-sref=".history">History</a></li>
+ <li ui-sref-active="active"><a ui-sref=".summary">Summary</a></li>
+ <li ui-sref-active="active"><a ui-sref=".config">Configuration</a></li>
+ <li ng-if="checkpointDetails.id != -1" class="active"><a>Details for Checkpoint {{ checkpointDetails.id }}</a></li>
+ </ul>
+ </nav>
+ <div id="checkpoints-view" ui-view="checkpoints-view" class="clean checkpoints-view"></div>
</div>
@@ -0,0 +1,57 @@
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<div ng-if="checkpointStats">
+ <h3>History</h3>
+</div>
+<!-- h3 History-->
+<!-- table.table.table-body-hover.table-clickable-->
+<!-- thead-->
+<!-- tr-->
+<!-- td #[strong ID]-->
+<!-- td #[strong Status]-->
+<!-- td #[strong Acknowledged]-->
+<!-- td #[strong Trigger Time]-->
+<!-- td #[strong Latest Ack]-->
+<!-- td #[strong Duration]-->
+<!-- td #[strong State Size]-->
+<!-- td-->
+<!-- tbody(ng-if="checkpointStats['checkpoints'] && checkpointStats['checkpoints'].length > 0")-->
+<!-- tr(ng-repeat="checkpoint in checkpointStats['checkpoints']" ng-class="{'bg-warning': checkpoint['status'] == 'FAILED'}")-->
+<!-- td {{ checkpoint['id'] }}-->
+<!-- td(ng-if="checkpoint['status'] == 'IN_PROGRESS'") #[i(aria-hidden="true").fa.fa-circle-o-notch.fa-spin.fa-fw] In Progress-->
+<!-- td(ng-if="checkpoint['status'] == 'COMPLETED'") #[i(aria-hidden="true").fa.fa-check]-->
+<!-- td(ng-if="checkpoint['status'] == 'FAILED'") #[i(aria-hidden="true").fa.fa-remove] Failed-->
+<!-- td {{ checkpoint['subtasks']['acknowledged'] }}/{{ checkpoint['subtasks']['count'] }}-->
+<!-- = ' '-->
+<!-- span(ng-if="checkpoint['status'] == 'IN_PROGRESS'") ({{ checkpoint['subtasks']['acknowledged']/checkpoint['subtasks']['count'] | percentage }})-->
+<!-- td {{ checkpoint['trigger_timestamp'] | amDateFormat:'H:mm:ss' }}-->
+<!-- td {{ checkpoint['latest_ack_timestamp'] | amDateFormat:'H:mm:ss' }}-->
+<!-- td {{ checkpoint['duration'] | humanizeDuration }}-->
+<!-- td {{ checkpoint['size'] | humanizeBytes }}-->
+<!-- td-->
+<!-- //a.btn.btn-default(ng-click="toggleCheckpointDetails(checkpoint['id'])")-->
+<!-- a.btn.btn-default(ui-sref="^.details({checkpointId: checkpoint['id']})")-->
+<!-- i(aria-hidden="true").fa.fa-chevron-right-->
+<!-- = ' '-->
+<!-- | <strong>More details</strong>-->
+<!-- tbody(ng-if="!checkpointStats['checkpoints'] || checkpointStats['checkpoints'].length == 0")-->
+<!-- tr-->
+<!-- td(colspan=5) No checkpoints triggered-->
+<!---->
@@ -0,0 +1,59 @@
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<div ng-if="checkpointConfig">
+ <table class="table">
+ <thead>
+ <tr>
+ <td><strong>Option</strong></td>
+ <td><strong>Value</strong></td>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>Checkpointing Mode</td>
+ <td ng-if="checkpointConfig['mode'] == 'exactly_once'">Exactly Once</td>
+ <td ng-if="checkpointConfig['mode'] != 'exactly_once'">At Least Once</td>
+ </tr>
+ <tr>
+ <td>Interval</td>
+ <td ng-if="checkpointConfig['interval'] == '0x7fffffffffffffff'">Periodic checkpoints disabled</td>
+ <td ng-if="checkpointConfig['interval'] != '0x7fffffffffffffff'">{{ checkpointConfig['interval'] | humanizeDuration }}</td>
+ </tr>
+ <tr>
+ <td>Timeout</td>
+ <td>{{ checkpointConfig['timeout'] | humanizeDuration }}</td>
+ </tr>
+ <tr>
+ <td>Minimum Pause Between Checkpoints</td>
+ <td>{{ checkpointConfig['min_pause'] | humanizeDuration }}</td>
+ </tr>
+ <tr>
+ <td>Maximum Concurrent Checkpoints</td>
+ <td>{{ checkpointConfig['max_concurrent'] }}</td>
+ </tr>
+ <tr>
+ <td>Persist Checkpoints Externally</td>
+ <td ng-if="checkpointConfig['externalization']['enabled']">Enabled <span ng-if="checkpointConfig['externalization']['delete_on_cancellation']">(delete on cancellation)</span><span ng-if="!checkpointConfig['externalization']['delete_on_cancellation']">(retain on cancellation)</span>
+ </td>
+ <td ng-if="!checkpointConfig['externalization']['enabled']">Disabled</td>
+ </tr>
+ </tbody>
+ </table>
+</div>
@@ -0,0 +1,51 @@
+
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+<div ng-if="checkpointStats">
+ <table class="table table-responsive">
+ <thead>
+ <tr>
+ <td width="30%"><strong>Checkpoint Event</strong></td>
+ <td width="70%"><strong>Count</strong></td>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>Triggered</td>
+ <td>{{ checkpointStats['counts']['total'] }}</td>
+ </tr>
+ <tr>
+ <td>In Progress</td>
+ <td>{{ checkpointStats['counts']['in_progress'] }}</td>
+ </tr>
+ <tr>
+ <td>Completed</td>
+ <td>{{ checkpointStats['counts']['completed'] }}</td>
+ </tr>
+ <tr>
+ <td>Failed</td>
+ <td>{{ checkpointStats['counts']['failed'] }}</td>
+ </tr>
+ <tr>
+ <td>Restored</td>
+ <td>{{ checkpointStats['counts']['restored'] }}</td>
+ </tr>
+ </tbody>
+ </table>
+</div>
Oops, something went wrong.

0 comments on commit 536e4b3

Please sign in to comment.