private static ApplicationId parseApplicationId(String appIdStr) { ApplicationId appId = null; if (appIdStr.startsWith(ApplicationId.appIdStrPrefix)) { try { appId = ApplicationId.fromString(appIdStr); } catch (IllegalArgumentException e) { appId = null; } } return appId; }
@Public @Deprecated public static ApplicationId toApplicationId( String appIdStr) { return ApplicationId.fromString(appIdStr); }
private Set<TimelineEntityGroupId> toEntityGroupId(String strAppId) { ApplicationId appId = ApplicationId.fromString(strAppId); TimelineEntityGroupId groupId = TimelineEntityGroupId.newInstance( appId, ApplicationMaster.CONTAINER_ENTITY_GROUP_ID); Set<TimelineEntityGroupId> result = new HashSet<>(); result.add(groupId); return result; } }
@Public @Deprecated public static ApplicationId toApplicationId(RecordFactory recordFactory, String applicationIdStr) { return ApplicationId.fromString(applicationIdStr); }
private static long getAppIdSuffix(String appIdStr) { if (appIdStr == null) { return 0L; } ApplicationId appId = ApplicationId.fromString(appIdStr); long id = appId.getId() % TS_MULTIPLIER; return id; }
@Override public byte[] encode(String appIdStr) { ApplicationId appId = ApplicationId.fromString(appIdStr); byte[] appIdBytes = new byte[getKeySize()]; byte[] clusterTs = Bytes.toBytes( LongConverter.invertLong(appId.getClusterTimestamp())); System.arraycopy(clusterTs, 0, appIdBytes, 0, Bytes.SIZEOF_LONG); byte[] seqId = Bytes.toBytes( HBaseTimelineSchemaUtils.invertInt(appId.getId())); System.arraycopy(seqId, 0, appIdBytes, Bytes.SIZEOF_LONG, Bytes.SIZEOF_INT); return appIdBytes; }
protected static ApplicationId parseApplicationId(String appId) { if (appId == null || appId.isEmpty()) { throw new NotFoundException("appId, " + appId + ", is empty or null"); } ApplicationId aid = null; try { aid = ApplicationId.fromString(appId); } catch (Exception e) { throw new BadRequestException(e); } if (aid == null) { throw new NotFoundException("appId is null"); } return aid; }
public static ApplicationId parseApplicationId(RecordFactory recordFactory, String appId) { if (appId == null || appId.isEmpty()) { throw new NotFoundException("appId, " + appId + ", is empty or null"); } ApplicationId aid = null; try { aid = ApplicationId.fromString(appId); } catch (Exception e) { throw new BadRequestException(e); } if (aid == null) { throw new NotFoundException("app with id " + appId + " not found"); } return aid; }
private static TargetApplicationsNamespace parseAppID(String appIDStr) throws InvalidAllocationTagsQueryException { try { ApplicationId applicationId = ApplicationId.fromString(appIDStr); return new AppID(applicationId); } catch (IllegalArgumentException e) { throw new InvalidAllocationTagsQueryException( "Invalid application ID for " + APP_ID.getTypeKeyword() + ": " + appIDStr); } }
@Override public Set<TimelineEntityGroupId> getTimelineEntityGroupId(String entityId, String entityType) { ApplicationId appId = ApplicationId.fromString( entityId); return Sets.newHashSet(getStandardTimelineGroupId(appId)); }
private String[] getAppNameAndType(CommandLine cliParser, String option) throws IOException, YarnException { String applicationIdOrName = cliParser.getOptionValue(option); try { ApplicationId id = ApplicationId.fromString(applicationIdOrName); ApplicationReport report = getApplicationReport(id); return new String[]{report.getName(), report.getApplicationType()}; } catch (IllegalArgumentException e) { // assume CLI option provided the app name // and read appType from command line since id wasn't provided String appType = getSingleAppTypeFromCLI(cliParser); return new String[]{applicationIdOrName, appType}; } }
/** * Moves the application with the given ID to the given queue. */ private void moveApplicationAcrossQueues(String applicationId, String queue) throws YarnException, IOException { ApplicationId appId = ApplicationId.fromString(applicationId); ApplicationReport appReport = client.getApplicationReport(appId); if (appReport.getYarnApplicationState() == YarnApplicationState.FINISHED || appReport.getYarnApplicationState() == YarnApplicationState.KILLED || appReport.getYarnApplicationState() == YarnApplicationState.FAILED) { sysout.println("Application " + applicationId + " has already finished "); } else { sysout.println("Moving application " + applicationId + " to queue " + queue); client.moveApplicationAcrossQueues(appId, queue); sysout.println("Successfully completed move."); } }
@Override public Set<TimelineEntityGroupId> getTimelineEntityGroupId(String entityType, NameValuePair primaryFilter, Collection<NameValuePair> secondaryFilters) { ApplicationId appId = ApplicationId.fromString( primaryFilter.getValue().toString()); return Sets.newHashSet(getStandardTimelineGroupId(appId)); }
@VisibleForTesting static void removeApplication(Configuration conf, String applicationId) throws Exception { RMStateStore rmStore = RMStateStoreFactory.getStore(conf); rmStore.setResourceManager(new ResourceManager()); rmStore.init(conf); rmStore.start(); try { ApplicationId removeAppId = ApplicationId.fromString(applicationId); LOG.info("Deleting application " + removeAppId + " from state store"); rmStore.removeApplication(removeAppId); LOG.info("Application is deleted from state store"); } finally { rmStore.stop(); } }
@Before public void setup() throws Exception { appId = ApplicationId.fromString("application_1518143905142_509690"); cId = ContainerId.fromString("container_e138_1518143905142_509690_01_000001"); entities = new HashMap<>(); generateEntity(); request = Mockito.mock(HttpServletRequest.class); Mockito.when(request.getRemoteUser()) .thenReturn(System.getProperty("user.name")); logWebService = new LogWebServiceTest(); }
private void loadRMAppStateFromAppNode(RMState rmState, String appNodePath, String appIdStr) throws Exception { byte[] appData = getData(appNodePath); if (LOG.isDebugEnabled()) { LOG.debug("Loading application from znode: " + appNodePath); } ApplicationId appId = ApplicationId.fromString(appIdStr); ApplicationStateDataPBImpl appState = new ApplicationStateDataPBImpl( ApplicationStateDataProto.parseFrom(appData)); if (!appId.equals( appState.getApplicationSubmissionContext().getApplicationId())) { throw new YarnRuntimeException("The node name is different from the " + "application id"); } rmState.appState.put(appId, appState); loadApplicationAttemptState(appState, appNodePath); }
@Private @VisibleForTesting public int dumpAContainersLogs(String appId, String containerId, String nodeId, String jobOwner) throws IOException { ContainerLogsRequest options = new ContainerLogsRequest(); options.setAppId(ApplicationId.fromString(appId)); options.setContainerId(containerId); options.setNodeId(nodeId); options.setAppOwner(jobOwner); Set<String> logs = new HashSet<String>(); options.setLogTypes(logs); options.setBytes(Long.MAX_VALUE); return dumpAContainerLogsForLogType(options, false); }
private ApplicationStateData createApplicationState(String appIdStr, byte[] data) throws IOException { ApplicationId appId = ApplicationId.fromString(appIdStr); ApplicationStateDataPBImpl appState = new ApplicationStateDataPBImpl( ApplicationStateDataProto.parseFrom(data)); if (!appId.equals( appState.getApplicationSubmissionContext().getApplicationId())) { throw new YarnRuntimeException("The database entry for " + appId + " contains data for " + appState.getApplicationSubmissionContext().getApplicationId()); } return appState; }
@Test public void testZKNodeLimit() throws Exception { TestZKRMStateStoreTester zkTester = new TestZKRMStateStoreTester(); long submitTime = System.currentTimeMillis(); long startTime = System.currentTimeMillis() + 1234; Configuration conf = new YarnConfiguration(); conf.setInt(YarnConfiguration.RM_ZK_ZNODE_SIZE_LIMIT_BYTES, 1); RMStateStore store = zkTester.getRMStateStore(conf); TestAppRejDispatcher dispatcher = new TestAppRejDispatcher(); store.setRMDispatcher(dispatcher); ApplicationId appId1 = ApplicationId.fromString("application_1352994193343_0001"); storeApp(store, appId1, submitTime, startTime); GenericTestUtils.waitFor(new Supplier<Boolean>() { @Override public Boolean get() { return dispatcher.appsavefailedEvnt; } }, 100, 5000); }
@Override protected void render(Block html) { ApplicationId applicationID = ApplicationId.fromString($(APPLICATION_ID)); Application app = this.nmContext.getApplications().get(applicationID); AppInfo info = new AppInfo(app); info("Application's information") ._("ApplicationId", info.getId()) ._("ApplicationState", info.getState()) ._("User", info.getUser()); TABLE<Hamlet> containersListBody = html._(InfoBlock.class) .table("#containers"); for (String containerIdStr : info.getContainers()) { containersListBody .tr().td() .a(url("container", containerIdStr), containerIdStr) ._()._(); } containersListBody._(); } }