private JobExecutionInfo resultSetToJobExecutionInfo(ResultSet rs) throws SQLException { JobExecutionInfo jobExecutionInfo = new JobExecutionInfo(); jobExecutionInfo.setJobName(rs.getString("job_name")); jobExecutionInfo.setJobId(rs.getString("job_id")); try { jobExecutionInfo.setStartTime(rs.getTimestamp("start_time").getTime()); } catch (SQLException se) { jobExecutionInfo.setStartTime(0); jobExecutionInfo.setEndTime(rs.getTimestamp("end_time").getTime()); } catch (SQLException se) { jobExecutionInfo.setEndTime(0); jobExecutionInfo.setDuration(rs.getLong("duration")); String state = rs.getString("state"); if (!Strings.isNullOrEmpty(state)) { jobExecutionInfo.setState(JobStateEnum.valueOf(state)); jobExecutionInfo.setLaunchedTasks(rs.getInt("launched_tasks")); jobExecutionInfo.setCompletedTasks(rs.getInt("completed_tasks")); String launcherType = rs.getString("launcher_type"); if (!Strings.isNullOrEmpty(launcherType)) { jobExecutionInfo.setLauncherType(LauncherTypeEnum.valueOf(launcherType)); jobExecutionInfo.setTrackingUrl(trackingUrl);
JobExecutionInfo jobExecutionInfo = new JobExecutionInfo(); jobExecutionInfo.setJobName(this.jobName); jobExecutionInfo.setJobId(this.jobId); if (this.startTime > 0) { jobExecutionInfo.setStartTime(this.startTime); jobExecutionInfo.setEndTime(this.endTime); jobExecutionInfo.setDuration(this.duration); jobExecutionInfo.setState(JobStateEnum.valueOf(this.state.name())); jobExecutionInfo.setLaunchedTasks(this.taskCount); jobExecutionInfo.setCompletedTasks(this.getCompletedTasks()); jobExecutionInfo.setLauncherType(getLauncherType()); if (getTrackingURL().isPresent()) { jobExecutionInfo.setTrackingUrl(getTrackingURL().get()); taskExecutionInfos.add(taskState.toTaskExecutionInfo()); jobExecutionInfo.setTaskExecutions(taskExecutionInfos); jobExecutionInfo.setMetrics(metricArray); jobExecutionInfo.setJobProperties(new StringMap(jobProperties));
jobExecutionInfo.setMetrics(jobMetrics); jobPropertiesQueryStatement.setString(1, jobExecutionInfo.getJobId()); try (ResultSet jobPropertiesRs = jobPropertiesQueryStatement.executeQuery()) { Map<String, String> jobProperties = Maps.newHashMap(); jobExecutionInfo.setJobProperties(new StringMap(jobProperties)); jobExecutionInfo.setTaskExecutions(taskExecutionInfos);
private void addMetricsToJobExecutions(Connection connection, JobExecutionQuery query, Map<String, JobExecutionInfo> jobExecutionInfos) throws SQLException { if (query.isIncludeJobMetrics() && jobExecutionInfos.size() > 0) { String template = String.format(JOB_METRIC_QUERY_STATEMENT_TEMPLATE, getInPredicate(jobExecutionInfos.size())); int index = 1; try (PreparedStatement jobMetricQueryStatement = connection.prepareStatement(template)) { for (String jobId : jobExecutionInfos.keySet()) { jobMetricQueryStatement.setString(index++, jobId); } try (ResultSet jobMetricRs = jobMetricQueryStatement.executeQuery()) { while (jobMetricRs.next()) { String jobId = jobMetricRs.getString("job_id"); JobExecutionInfo jobExecutionInfo = jobExecutionInfos.get(jobId); MetricArray metricArray = jobExecutionInfo.getMetrics(GetMode.NULL); if (metricArray == null) { metricArray = new MetricArray(); jobExecutionInfo.setMetrics(metricArray); } metricArray.add(resultSetToMetric(jobMetricRs)); } } } } }
String jobId = jobPropertiesRs.getString("job_id"); JobExecutionInfo jobExecutionInfo = jobExecutionInfos.get(jobId); StringMap jobProperties = jobExecutionInfo.getJobProperties(GetMode.NULL); if (jobProperties == null) { jobProperties = new StringMap(Maps.<String, String>newHashMap()); jobExecutionInfo.setJobProperties(jobProperties);
private JobExecutionInfo resultSetToJobExecutionInfo(ResultSet rs) throws SQLException { JobExecutionInfo jobExecutionInfo = new JobExecutionInfo(); jobExecutionInfo.setJobName(rs.getString("job_name")); jobExecutionInfo.setJobId(rs.getString("job_id")); try { Timestamp startTime = rs.getTimestamp("start_time"); if (startTime != null) { jobExecutionInfo.setStartTime(startTime.getTime()); jobExecutionInfo.setStartTime(0); jobExecutionInfo.setEndTime(endTime.getTime()); jobExecutionInfo.setEndTime(0); jobExecutionInfo.setDuration(rs.getLong("duration")); String state = rs.getString("state"); if (!Strings.isNullOrEmpty(state)) { jobExecutionInfo.setState(JobStateEnum.valueOf(state)); jobExecutionInfo.setLaunchedTasks(rs.getInt("launched_tasks")); jobExecutionInfo.setCompletedTasks(rs.getInt("completed_tasks")); String launcherType = rs.getString("launcher_type"); if (!Strings.isNullOrEmpty(launcherType)) { jobExecutionInfo.setLauncherType(LauncherTypeEnum.valueOf(launcherType)); jobExecutionInfo.setTrackingUrl(trackingUrl);