Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add gantt chart view of job peers #153

Merged
merged 2 commits into from
Jun 20, 2017
Merged

Add gantt chart view of job peers #153

merged 2 commits into from
Jun 20, 2017

Conversation

jpwhite4
Copy link
Member

@jpwhite4 jpwhite4 commented Jun 7, 2017

Description

Change the Peers node in the search history so that it opens a new tab with an interactive graphical display of the job's peer jobs (i.e. the jobs that ran on the same shared hardware). The individual job peers no longer show as leaf nodes because this display was not useful and did not scale when there were lots of job peers. Jobs with many peers are now handled using the paging toolbar in the graphical display.

These code changes:

  • Add new REST endpoint to retrieve the peer data
  • Change the peer tree node type and metadata
  • Add new Gantt chart class
  • Add new base class for job viewer chart tabs.

Note that the new ChartTab base class is intended to be used as the base class for all job viewer timeseries plots. This should significantly reduce the amount of cut-and-paste boilerplate code. A future pull request is planned to switch all charts over to this code.

The job peers click uses the existing mechanism that supports the click through from the metric explorer.

peers

Motivation and Context

Improve ability to analyse shared jobs.

Tests performed

Installed on metrics-dev manually tested. Tests included:

  • confirm that the chart clicks work
  • confirm that paging works
  • run through multiple combinations of opening and closing job tabs confirm that the UI behaves as expected. Confirm that the tree nodes get updated as expected.

Types of changes

  • New feature (non-breaking change which adds functionality)

Checklist:

  • My code follows the code style of this project as found in the CONTRIBUTING document.
  • All new and existing tests passed.

@jpwhite4 jpwhite4 force-pushed the peers branch 4 times, most recently from fba0055 to a787fb1 Compare June 9, 2017 13:44
@jpwhite4 jpwhite4 changed the title Add gannt chart view of job peers Add gantt chart view of job peers Jun 9, 2017
@jpwhite4 jpwhite4 requested a review from ryanrath June 9, 2017 14:01
Copy link
Contributor

@ryanrath ryanrath left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall looks good to me. I did run into a few things when testing it out on my dev port though:

  • when hovering over the y axis labels the mouse changes to the 'finger' like you should be able to click on them but nothing happens when you do.
  • Hovering over the peer bars creates no change in the mouse pointer but clicking on the bar does take you to a 'Peers of search w/ that job selected.
  • Clicking the 'Current' bar raises an error in GanntChart.js:43 due to not having a evt.point.ref value. Don't know if this is meant to be clickable or not but thought I'd let you know what I found.

So yeah, other than those few things it looks good.

@@ -1352,6 +1360,72 @@ public function _processJobSearchByAction(Request $request, Application $app, XD
return $results;
}

protected function getJobPeers(Application $app, XDUser $user, $realm, $jobId, $start, $limit)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Documentation for the function wouldn't suck

- Added new REST endpoint to retrieve the peer data
- Added new gantt chart tab
- Added docstring to getJobPeers function
- Click events only added to job peers not the job itself.
- Cursor changed to a pointer when the click event is available.
@jpwhite4 jpwhite4 merged commit af752d3 into ubccr:xdmod7.0 Jun 20, 2017
@jpwhite4 jpwhite4 deleted the peers branch June 20, 2017 20:23
@tyearke tyearke added the enhancement Enhancement of the functionality of an existing feature label Aug 14, 2017
@tyearke tyearke added this to the v7.0.0 milestone Aug 14, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Enhancement of the functionality of an existing feature
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants