Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Pig >> mail # user >> pig 0.12.0 ERROR 2998: Unhandled internal error. com.google.common.collect.ImmutableSet.of


Copy link to this message
-
RE: pig 0.12.0 ERROR 2998: Unhandled internal error. com.google.common.collect.ImmutableSet.of
Ok, I figured out the problem. I have a customized hadoop conf directory. In hadoop-env.sh file, I defined an "extra java classpath" as

export HADOOP_CLASSPATH="/usr/lib/hadoop/lib/*:/opt/hadoopgpl/lib/*:/opt/hadoopgpl/lib/pig-0.8.0/*:$HADOOP_CLASSPATH",

so it's point to the jar file for pig 0.8. once I remove it, everything works fine.

Thanks Cheolsoo and Dmitriy for your help.

Dan

-----Original Message-----
From: Danfeng Li [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, March 12, 2013 11:26 PM
To: [EMAIL PROTECTED]
Subject: RE: pig 0.12.0 ERROR 2998: Unhandled internal error. com.google.common.collect.ImmutableSet.of

Hi, Cheolsoo,

I tried this on my laptop's ubuntu, it works fine. Do you have any suggestion where should I look into on the server to figure out the problem?

Thanks.
Dan

-----Original Message-----
From: Cheolsoo Park [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, March 12, 2013 11:13 PM
To: [EMAIL PROTECTED]
Subject: Re: pig 0.12.0 ERROR 2998: Unhandled internal error. com.google.common.collect.ImmutableSet.of

Hi Dan,

I don't think you've downloaded the correct guava jar file. Here is the output of javap on pig-withouthadoop.jar and google-guava-r11.jar:

1) pig-withouthadoop.jar

/usr/java/latest/bin/javap -classpath pig-withouthadoop.jar -c com.google.common.collect.ImmutableSet | grep  'public static com.google.common.collect.ImmutableSet of'
public static com.google.common.collect.ImmutableSet of(); public static com.google.common.collect.ImmutableSet of(java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object[]);

2) google-guava-r11.jar
/usr/java/latest/bin/javap -classpath google-guava-r11.jar -c com.google.common.collect.ImmutableSet | grep  'public static com.google.common.collect.ImmutableSet of'
public static com.google.common.collect.ImmutableSet of(); public static com.google.common.collect.ImmutableSet of(java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object, java.lang.Object); public static com.google.common.collect.ImmutableSet of(java.lang.Object[]);

As can be seen, the 7th static method is different.

Now looking at your error message, it is complaining about that 7th static method.

>> java.lang.NoSuchMethodError: com.google.common.collect.
ImmutableSet.of(Ljava/lang/Object;Ljava/lang/Object;
Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object
[Ljava/lang/Object;)Lcom/google/common/collect/ImmutableSet;

In fact, guava-11.0.jar should be embedded in pig-withouthadoop.jar, so I am not sure why you're getting this error.

Thanks,
Cheolsoo

On Tue, Mar 12, 2013 at 4:45 PM, Danfeng Li <[EMAIL PROTECTED]> wrote:

> Here's the output for the secretDebugCmd
>
> dli2@sig1:~/$ pig12 -secretDebugCmd -param input="s" -param output="t"
> -c b224G_1.pig Find hadoop at /usr/bin/hadoop dry run:
> HADOOP_CLASSPATH:
> /home/dli2/github/pig/bin/../conf:/usr/lib/jvm/java-1.6.0-openjdk-1.6.
> 0.0.x86_64/lib/tools.jar:/etc/hadoop/hmaster_cluster/conf:/home/dli2/g