@InterfaceAudience.Private public class QueueManager extends Object
JobQueueInfo
.
Queues are configured in the configuration file mapred-queues.xml.
To support backwards compatibility, queues can also be configured
in mapred-site.xml. However, when configured in the latter, there is
no support for hierarchical queues.Modifier and Type | Field and Description |
---|---|
static String |
QUEUE_CONF_FILE_NAME |
Constructor and Description |
---|
QueueManager(org.apache.hadoop.conf.Configuration clusterConf)
Construct a new QueueManager using configuration specified in the passed
in
Configuration object. |
Modifier and Type | Method and Description |
---|---|
Set<String> |
getLeafQueueNames()
Return the set of leaf level queues configured in the system to
which jobs are submitted.
|
Object |
getSchedulerInfo(String queueName)
Return the scheduler information configured for this queue.
|
boolean |
hasAccess(String queueName,
QueueACL qACL,
org.apache.hadoop.security.UserGroupInformation ugi)
Return true if the given user is part of the ACL for the given
QueueACL name for the given queue. |
void |
setSchedulerInfo(String queueName,
Object queueInfo)
Set a generic Object that represents scheduling information relevant
to a queue.
|
static String |
toFullPropertyName(String queue,
String property) |
public static final String QUEUE_CONF_FILE_NAME
public QueueManager(org.apache.hadoop.conf.Configuration clusterConf)
Configuration
object.
This instance supports queue configuration specified in mapred-site.xml,
but without support for hierarchical queues. If no queue configuration
is found in mapred-site.xml, it will then look for site configuration
in mapred-queues.xml supporting hierarchical queues.clusterConf
- mapreduce cluster configurationpublic Set<String> getLeafQueueNames()
public boolean hasAccess(String queueName, QueueACL qACL, org.apache.hadoop.security.UserGroupInformation ugi)
QueueACL
name for the given queue.
An operation is allowed if all users are provided access for this
operation, or if either the user or any of the groups specified is
provided access.queueName
- Queue on which the operation needs to be performed.qACL
- The queue ACL name to be checkedugi
- The user and groups who wish to perform the operation.public void setSchedulerInfo(String queueName, Object queueInfo)
queueName
- queue for which the scheduling information is to be set.queueInfo
- scheduling information for this queue.public Object getSchedulerInfo(String queueName)
queueName
- queue for which the scheduling information is required.Copyright © 2014 Apache Software Foundation. All Rights Reserved.