2013-07-08 12 views
5

Sto usando pig-0.11.0 + 28 con CDH4 e quando eseguo qualsiasi lavoro Pig, ottengo questa eccezione. Accade anche in modalità locale. Qualche idea?Pig java.lang.NoSuchFieldException: jobsInProgress exception

2013-07-08 13:53:44,035 [main] WARN org.apache.pig.backend.hadoop23.PigJobControl - falling back to default JobControl (not using hadoop 0.23 ?) 
    java.lang.NoSuchFieldException: jobsInProgress 
    at java.lang.Class.getDeclaredField(Class.java:1938) 
    at org.apache.pig.backend.hadoop23.PigJobControl.<clinit>(PigJobControl.java:58) 
    at org.apache.pig.backend.hadoop.executionengine.shims.HadoopShims.newJobControl(HadoopShims.java:102) 
    at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.JobControlCompiler.compile(JobControlCompiler.java:285) 
    at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher.launchPig(MapReduceLauncher.java:177) 
    at org.apache.pig.PigServer.launchPlan(PigServer.java:1266) 
    at org.apache.pig.PigServer.executeCompiledLogicalPlan(PigServer.java:1251) 
    at org.apache.pig.PigServer.execute(PigServer.java:1241) 
    at org.apache.pig.PigServer.executeBatch(PigServer.java:335) 
    at org.apache.pig.tools.grunt.GruntParser.executeBatch(GruntParser.java:137) 
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:198) 
    at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:170) 
    at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:84) 
    at org.apache.pig.Main.run(Main.java:604) 
    at org.apache.pig.Main.main(Main.java:157) 
    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.hadoop.util.RunJar.main(RunJar.java:208) 
+0

Si può provare a costruire il maiale contro Hadoop Yarn ('ant jar-withouthadoop -Dhadoopversion = 23') –

+1

Questo è un avvertimento. Puoi ignorarlo. Quando Pig rileva una versione ridotta di hadoop, stampa questo avviso e passa a utilizzare alcune API basse. – zsxwing

risposta

6

Questo WARN è innocuo in fase di esecuzione.

Pig è progettato per funzionare con molte versioni.

Poiché CDH4 invia Apache Hadoop 2.x con un'opzione framework MR MR (0.20/1.x), Pig qui si sta confondendo su cosa aspettarsi. Rileva una versione 2.x e tenta di caricare un submitter in stile MR2, ma se si utilizza MR1, quindi stampa questo WARN rumoroso e ricade su MR1 e procede comunque correttamente. L'errore è seguito da un messaggio come o simile a org.apache.pig.backend.hadoop23.PigJobControl - falling back to default che indica questo.