Skip to content

Commit 5489ce5

Browse files
committed
moved method emitDefaultUserLimitFactor to FSqueueConverter
Change-Id: Ife4762de43fd21924d2b481502580e74a8242d83
1 parent b605838 commit 5489ce5

File tree

3 files changed

+23
-19
lines changed

3 files changed

+23
-19
lines changed

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSConfigToCSConfigConverter.java

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,10 @@
1616

1717
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.converter;
1818

19-
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.DOT;
2019
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.PREFIX;
2120
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.MAPPING_RULE_FORMAT;
2221
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.MAPPING_RULE_JSON;
2322
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.MAPPING_RULE_FORMAT_JSON;
24-
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.USER_LIMIT_FACTOR;
2523
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.converter.FSQueueConverter.QUEUE_MAX_AM_SHARE_DISABLED;
2624

2725
import java.io.ByteArrayOutputStream;
@@ -315,7 +313,7 @@ private void convertCapacitySchedulerXml(FairScheduler fs) {
315313
.withPercentages(usePercentages)
316314
.build();
317315

318-
emitDefaultUserLimitFactor(fsLeafQueue);
316+
queueConverter.emitDefaultUserLimitFactor(fsLeafQueue, capacitySchedulerConfig);
319317
queueConverter.convertQueueHierarchy(rootQueue);
320318
emitACLs(fs);
321319
}
@@ -419,19 +417,6 @@ private void emitDefaultMaxAMShare() {
419417
}
420418
}
421419

422-
private void emitDefaultUserLimitFactor(Collection<FSLeafQueue> fsLeafQueue) {
423-
fsLeafQueue
424-
.forEach((leafQueue) -> {
425-
if (!capacitySchedulerConfig.
426-
isAutoQueueCreationV2Enabled(leafQueue.getName())) {
427-
capacitySchedulerConfig.setFloat(
428-
CapacitySchedulerConfiguration.
429-
PREFIX + leafQueue.getName() + DOT + USER_LIMIT_FACTOR,
430-
-1.0f);
431-
}
432-
});
433-
}
434-
435420
private void emitDisablePreemptionForObserveOnlyMode() {
436421
if (preemptionMode == FSConfigToCSConfigConverterParams
437422
.PreemptionMode.OBSERVE_ONLY) {

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/FSQueueConverter.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,16 @@
1717
package org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.converter;
1818

1919
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.PREFIX;
20+
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.DOT;
21+
import static org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration.USER_LIMIT_FACTOR;
2022

2123
import java.util.List;
24+
import java.util.Collection;
2225
import java.util.stream.Collectors;
2326

2427
import org.apache.hadoop.conf.Configuration;
2528
import org.apache.hadoop.yarn.api.records.Resource;
29+
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacitySchedulerConfiguration;
2630
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.ConfigurableResource;
2731
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSLeafQueue;
2832
import org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSQueue;
@@ -215,6 +219,19 @@ private void emitPreemptionDisabled(String queueName, FSQueue queue) {
215219
}
216220
}
217221

222+
public void emitDefaultUserLimitFactor(Collection<FSLeafQueue> fsLeafQueue, CapacitySchedulerConfiguration config) {
223+
fsLeafQueue
224+
.forEach((leafQueue) -> {
225+
if (!config.
226+
isAutoQueueCreationV2Enabled(leafQueue.getName())) {
227+
config.setFloat(
228+
CapacitySchedulerConfiguration.
229+
PREFIX + leafQueue.getName() + DOT + USER_LIMIT_FACTOR,
230+
-1.0f);
231+
}
232+
});
233+
}
234+
218235
/**
219236
* yarn.scheduler.fair.sizebasedweight ==>
220237
* yarn.scheduler.capacity.&lt;queue-path&gt;

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/converter/TestFSConfigToCSConfigConverter.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -191,10 +191,12 @@ public void testDefaultUserLimitFactor() throws Exception {
191191
converter.convert(config);
192192

193193
Configuration conf = converter.getCapacitySchedulerConfig();
194-
String userLimitFactor =
195-
conf.get(PREFIX + "root.default." + USER_LIMIT_FACTOR);
196194

197-
assertEquals("Default user limit factor", "-1.0", userLimitFactor);
195+
assertNull("root.users user-limit-factor should be null",
196+
conf.get(PREFIX + "root.users." + USER_LIMIT_FACTOR));
197+
198+
assertEquals("root.default user-limit-factor", "-1.0",
199+
conf.get(PREFIX + "root.default.user-limit-factor"));
198200

199201
assertEquals("root.users.joe user-limit-factor", "-1.0",
200202
conf.get(PREFIX + "root.users.joe.user-limit-factor"));

0 commit comments

Comments
 (0)