Search code examples
javahadoopapache-pigmapr

java.lang.IllegalArgumentException: There is no queue named default


I'm trying to load the data into pig and dump the same data on to the console. I did without any errors in Cloudera sandbox using following commands.

raw_data = LOAD 'hdfs:/user/cloudera/sampledata' USING PigStorage(',') AS (
           custno:chararray,
           firstname:chararray,
           lastname:chararray,
           age:int,
           profession:chararray
);

dump raw_data;

it dumps all the data in sampledata file.

Trying to do the same in MapR cluster with the following commands.

raw_data = LOAD '/hdfspath/input' USING PigStorage(',') AS (
           custno:chararray,
           firstname:chararray,
           lastname:chararray,
           age:int,
           profession:chararray
);
dump raw_data;

Getting the following error.

(RemoteException): org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.lang.IllegalArgumentException: There is no queue named default

ERROR org.apache.hadoop.ipc.RPC - FailoverProxy: Failing this Call: getQueueAdmins for error(RemoteException): org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.lang.IllegalArgumentException: There is no queue named default
        at org.apache.hadoop.mapred.QueueManager.getQueueACL(QueueManager.java:413)
        at org.apache.hadoop.mapred.JobTracker.getQueueAdmins(JobTracker.java:5346)
        at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:993)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1326)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1322)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1127)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1320)

ERROR 2997: Unable to recreate exception from backend error: org.apache.hadoop.ipc.RemoteException: java.io.IOException: java.lang.IllegalArgumentException: There is no queue named default
        at org.apache.hadoop.mapred.QueueManager.getQueueACL(QueueManager.java:413)
        at org.apache.hadoop.mapred.JobTracker.getQueueAdmins(JobTracker.java:5346)
        at sun.reflect.GeneratedMethodAccessor19.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:993)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1326)
        at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1322)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1127)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1320)

        at org.apache.hadoop.ipc.Client.call(Client.java:1095)
        at org.apache.hadoop.ipc.Client.call(Client.java:1041)
        at org.apache.hadoop.ipc.RPC$FailoverInvoker.invoke(RPC.java:540)
        at org.apache.hadoop.mapred.$Proxy0.getQueueAdmins(Unknown Source)
        at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:939)
        at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:885)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1127)
        at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:885)
        at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:859)
        at org.apache.hadoop.mapred.jobcontrol.Job.submit(Job.java:378)
        at org.apache.hadoop.mapred.jobcontrol.JobControl.startReadyJobs(JobControl.java:247)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.pig.backend.hadoop20.PigJobControl.mainLoopAction(PigJobControl.java:157)
        at org.apache.pig.backend.hadoop20.PigJobControl.run(PigJobControl.java:134)
        at java.lang.Thread.run(Thread.java:724)
        at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher$1.run(MapReduceLauncher.java:257)

Any help please.

Thanks in Advance.


Solution

  • Typically this happens if your scheduler has specific queues created without users assigned, and the user submitting the job doesn't specify any queue name. If it assumes default queue, and has no permission to use it, you could end up with this error. You can avoid the issue with export PIG_OPTS=”$PIG_OPTS -Dmapred.job.queue.name=my-queue” or pig -Dmapreduce.job.queuename=$queue_name -f path/to/script.pig