/** * Interns all the strings in the given array in place, * returning the same array. */ public static String[] internStringsInArray(String[] strings) { for (int i = 0; i < strings.length; i++) { strings[i] = weakIntern(strings[i]); } return strings; }
/** * Copied method from org.apache.hadoop.yarn.util.Apps. * It was broken by YARN-1824 (2.4.0) and fixed for 2.4.1 * by https://issues.apache.org/jira/browse/YARN-1931 */ public static void addToEnvironment(Map<String, String> environment, String variable, String value) { String val = environment.get(variable); if (val == null) { val = value; } else { val = val + File.pathSeparator + value; } environment.put(StringInterner.weakIntern(variable), StringInterner.weakIntern(val)); }
case "name": if (token.length() > 0) { confName = StringInterner.weakIntern(tokenStr.trim()); confValue = StringInterner.weakIntern(tokenStr); break; case "source": confSource.add(StringInterner.weakIntern(tokenStr)); break; case "tag": if (token.length() > 0) { confTag = StringInterner.weakIntern(tokenStr);
private void handleStartProperty() { confName = null; confValue = null; confFinal = false; confTag = null; confSource.clear(); // First test for short format configuration int attrCount = reader.getAttributeCount(); for (int i = 0; i < attrCount; i++) { String propertyAttr = reader.getAttributeLocalName(i); if ("name".equals(propertyAttr)) { confName = StringInterner.weakIntern( reader.getAttributeValue(i)); } else if ("value".equals(propertyAttr)) { confValue = StringInterner.weakIntern( reader.getAttributeValue(i)); } else if ("final".equals(propertyAttr)) { confFinal = "true".equals(reader.getAttributeValue(i)); } else if ("source".equals(propertyAttr)) { confSource.add(StringInterner.weakIntern( reader.getAttributeValue(i))); } else if ("tag".equals(propertyAttr)) { confTag = StringInterner .weakIntern(reader.getAttributeValue(i)); } } }
Element field = (Element)fieldNode; if ("name".equals(field.getTagName()) && field.hasChildNodes()) attr = StringInterner.weakIntern( ((Text)field.getFirstChild()).getData().trim()); if ("value".equals(field.getTagName()) && field.hasChildNodes()) value = StringInterner.weakIntern( ((Text)field.getFirstChild()).getData()); if ("final".equals(field.getTagName()) && field.hasChildNodes()) finalParameter = "true".equals(((Text)field.getFirstChild()).getData()); if ("source".equals(field.getTagName()) && field.hasChildNodes()) source.add(StringInterner.weakIntern( ((Text)field.getFirstChild()).getData()));
String propertyAttr = reader.getAttributeLocalName(i); if ("name".equals(propertyAttr)) { confName = StringInterner.weakIntern( reader.getAttributeValue(i)); } else if ("value".equals(propertyAttr)) { confValue = StringInterner.weakIntern( reader.getAttributeValue(i)); } else if ("final".equals(propertyAttr)) { confFinal = "true".equals(reader.getAttributeValue(i)); } else if ("source".equals(propertyAttr)) { confSource.add(StringInterner.weakIntern( reader.getAttributeValue(i))); case "name": if (token.length() > 0) { confName = StringInterner.weakIntern(token.toString().trim()); confValue = StringInterner.weakIntern(token.toString()); break; case "source": confSource.add(StringInterner.weakIntern(token.toString())); break; case "include":
@Override public void setEnvironment(final Map<String, String> env) { if (env == null) return; initEnv(); this.environment.clear(); for (Map.Entry<String, String> e : env.entrySet()) { this.environment.put(StringInterner.weakIntern(e.getKey()), StringInterner.weakIntern(e.getValue())); } }
@Override public void setApplicationACLs( final Map<ApplicationAccessType, String> appACLs) { if (appACLs == null) return; initApplicationACLs(); this.applicationACLS.clear(); for (Map.Entry<ApplicationAccessType, String> e : appACLs.entrySet()) { this.applicationACLS.put(e.getKey(), StringInterner.weakIntern(e.getValue())); } }
public void readFields(DataInput in) throws IOException { jobid.readFields(in); this.jobFile = StringInterner.weakIntern(Text.readString(in)); this.url = StringInterner.weakIntern(Text.readString(in)); this.user = StringInterner.weakIntern(Text.readString(in)); this.name = StringInterner.weakIntern(Text.readString(in)); this.queueName = StringInterner.weakIntern(Text.readString(in)); } }
@Override public synchronized void readFields(DataInput in) throws IOException { name = StringInterner.weakIntern(Text.readString(in)); displayName = in.readBoolean() ? StringInterner.weakIntern(Text.readString(in)) : name; value.set(WritableUtils.readVLong(in)); }
private void initEnv() { if (this.environment != null) { return; } ContainerLaunchContextProtoOrBuilder p = viaProto ? proto : builder; List<StringStringMapProto> list = p.getEnvironmentList(); this.environment = new HashMap<String, String>(); for (StringStringMapProto c : list) { this.environment.put(StringInterner.weakIntern(c.getKey()), StringInterner.weakIntern(c.getValue())); } }
@Override public synchronized void readFields(DataInput in) throws IOException { name = StringInterner.weakIntern(Text.readString(in)); displayName = in.readBoolean() ? StringInterner.weakIntern(Text.readString(in)) : name; value = WritableUtils.readVLong(in); }
@Override public String getAssignedContainerMgrAddress() { readLock.lock(); try { return container == null ? null : StringInterner.weakIntern(container .getNodeId().toString()); } finally { readLock.unlock(); } }
@Override public void readFields(DataInput in) throws IOException { queueName = StringInterner.weakIntern(Text.readString(in)); operations = WritableUtils.readStringArray(in); }
private void handleTaskAttemptFinishedEvent(TaskAttemptFinishedEvent event) { TaskInfo taskInfo = info.tasksMap.get(event.getTaskId()); TaskAttemptInfo attemptInfo = taskInfo.attemptsMap.get(event.getAttemptId()); attemptInfo.finishTime = event.getFinishTime(); attemptInfo.status = StringInterner.weakIntern(event.getTaskStatus()); attemptInfo.state = StringInterner.weakIntern(event.getState()); attemptInfo.counters = event.getCounters(); attemptInfo.hostname = StringInterner.weakIntern(event.getHostname()); info.completedTaskAttemptsMap.put(event.getAttemptId(), attemptInfo); }
private void handleJobFailedEvent(JobUnsuccessfulCompletionEvent event) { info.finishTime = event.getFinishTime(); info.finishedMaps = event.getFinishedMaps(); info.finishedReduces = event.getFinishedReduces(); info.jobStatus = StringInterner.weakIntern(event.getStatus()); info.errorInfo = StringInterner.weakIntern(event.getDiagnostics()); }
@Override public synchronized void readFields(DataInput in) throws IOException { displayName = StringInterner.weakIntern(Text.readString(in)); counters.clear(); int size = WritableUtils.readVInt(in); for (int i = 0; i < size; i++) { T counter = newCounter(); counter.readFields(in); counters.put(counter.getName(), counter); limits.incrCounters(); } }
private void handleTaskFailedEvent(TaskFailedEvent event) { TaskInfo taskInfo = info.tasksMap.get(event.getTaskId()); taskInfo.status = TaskStatus.State.FAILED.toString(); taskInfo.finishTime = event.getFinishTime(); taskInfo.error = StringInterner.weakIntern(event.getError()); taskInfo.failedDueToAttemptId = event.getFailedAttemptID(); taskInfo.counters = event.getCounters(); }
private void handleTaskFailedEvent(TaskFailedEvent event) { TaskInfo taskInfo = info.tasksMap.get(event.getTaskId()); taskInfo.status = TaskStatus.State.FAILED.toString(); taskInfo.finishTime = event.getFinishTime(); taskInfo.error = StringInterner.weakIntern(event.getError()); taskInfo.failedDueToAttemptId = event.getFailedAttemptID(); taskInfo.counters = event.getCounters(); }
private void handleTaskFailedEvent(TaskFailedEvent event) { TaskInfo taskInfo = info.tasksMap.get(event.getTaskId()); taskInfo.status = TaskStatus.State.FAILED.toString(); taskInfo.finishTime = event.getFinishTime(); taskInfo.error = StringInterner.weakIntern(event.getError()); taskInfo.failedDueToAttemptId = event.getFailedAttemptID(); taskInfo.counters = event.getCounters(); }