You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@mahout.apache.org by Xiaobo Gu <gu...@gmail.com> on 2011/04/10 17:42:51 UTC

Can't run clustering example with 0.4

Hi,

I have followed the steps of page
https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep,

but I failed, I think it is because the examples jar has not been
added to CLASSPATH, how can I add the jars to CLASSPATH,


[gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
org.apache.mahout.clustering.syntheticcontrol.canopy.Job
Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
11/04/11 06:26:44 WARN driver.MahoutDriver: No
org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
on classpath, will use command-line arguments only
Exception in thread "main" java.lang.NoSuchMethodError:
org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
[gpadmin@linuxsvr ~]$

Re: Can't run clustering example with 0.4

Posted by Sean Owen <sr...@gmail.com>.
That doesn't surprise me -- not *too much* changed in 0.21.0. The unit
tests perhaps do not touch the driver class you are using, and so do
not trip up over this small incompatibility.

On Mon, Apr 11, 2011 at 1:39 PM, Xiaobo Gu <gu...@gmail.com> wrote:
> But the unit tests pass when compiled with Hadoop 0.21.0.
>
> On Mon, Apr 11, 2011 at 12:47 AM, Sean Owen <sr...@gmail.com> wrote:
>> Mahout 0.4 can't change as it has been released, but future versions? Sure,
>> eventually. Part of the problem is that some code in the project is still on
>> 0.19.x. And some clusters out there are still on 0.19 or 0.20. So it's hard
>> to require 0.21.
>> And as you see, Hadoop's releases are generally binary incompatible either
>> way with the previous version. Lots of code will work in 0.21 but there are
>> small and frustrating differences like this one that make it not quite work.
>> If you find a way to write the code that works on 0.20 and 0.21, perhaps
>> avoiding this method, please submit a patch.
>>
>>
>>
>> On Sun, Apr 10, 2011 at 4:48 PM, Xiaobo Gu <gu...@gmail.com> wrote:
>>>
>>> On Sun, Apr 10, 2011 at 11:44 PM, Benson Margulies
>>> <bi...@gmail.com> wrote:
>>> > The missing class is part of hadoop, and I note that you are using
>>> > 0.21, while Mahout 0.4 was qualified with 0.20.2.
>>>
>>> Thanks, will Mahout 0.4 support Hadoop 0.21.0 in the near future?
>>>
>>>
>>> > On Sun, Apr 10, 2011 at 11:42 AM, Xiaobo Gu <gu...@gmail.com>
>>> > wrote:
>>> >> Hi,
>>> >>
>>> >> I have followed the steps of page
>>> >>
>>> >> https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep,
>>> >>
>>> >> but I failed, I think it is because the examples jar has not been
>>> >> added to CLASSPATH, how can I add the jars to CLASSPATH,
>>> >>
>>> >>
>>> >> [gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
>>> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job
>>> >> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
>>> >> No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
>>> >> 11/04/11 06:26:44 WARN driver.MahoutDriver: No
>>> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
>>> >> on classpath, will use command-line arguments only
>>> >> Exception in thread "main" java.lang.NoSuchMethodError:
>>> >> org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
>>> >>        at
>>> >> org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>>> >>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>> >>        at
>>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>> >>        at
>>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>> >>        at java.lang.reflect.Method.invoke(Method.java:597)
>>> >>        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
>>> >> [gpadmin@linuxsvr ~]$
>>> >>
>>> >
>>
>>
>

Re: Can't run clustering example with 0.4

Posted by Xiaobo Gu <gu...@gmail.com>.
But the unit tests pass when compiled with Hadoop 0.21.0.

On Mon, Apr 11, 2011 at 12:47 AM, Sean Owen <sr...@gmail.com> wrote:
> Mahout 0.4 can't change as it has been released, but future versions? Sure,
> eventually. Part of the problem is that some code in the project is still on
> 0.19.x. And some clusters out there are still on 0.19 or 0.20. So it's hard
> to require 0.21.
> And as you see, Hadoop's releases are generally binary incompatible either
> way with the previous version. Lots of code will work in 0.21 but there are
> small and frustrating differences like this one that make it not quite work.
> If you find a way to write the code that works on 0.20 and 0.21, perhaps
> avoiding this method, please submit a patch.
>
>
>
> On Sun, Apr 10, 2011 at 4:48 PM, Xiaobo Gu <gu...@gmail.com> wrote:
>>
>> On Sun, Apr 10, 2011 at 11:44 PM, Benson Margulies
>> <bi...@gmail.com> wrote:
>> > The missing class is part of hadoop, and I note that you are using
>> > 0.21, while Mahout 0.4 was qualified with 0.20.2.
>>
>> Thanks, will Mahout 0.4 support Hadoop 0.21.0 in the near future?
>>
>>
>> > On Sun, Apr 10, 2011 at 11:42 AM, Xiaobo Gu <gu...@gmail.com>
>> > wrote:
>> >> Hi,
>> >>
>> >> I have followed the steps of page
>> >>
>> >> https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep,
>> >>
>> >> but I failed, I think it is because the examples jar has not been
>> >> added to CLASSPATH, how can I add the jars to CLASSPATH,
>> >>
>> >>
>> >> [gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
>> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job
>> >> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
>> >> No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
>> >> 11/04/11 06:26:44 WARN driver.MahoutDriver: No
>> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
>> >> on classpath, will use command-line arguments only
>> >> Exception in thread "main" java.lang.NoSuchMethodError:
>> >> org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
>> >>        at
>> >> org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>> >>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> >>        at
>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> >>        at
>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> >>        at java.lang.reflect.Method.invoke(Method.java:597)
>> >>        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
>> >> [gpadmin@linuxsvr ~]$
>> >>
>> >
>
>

Re: Can't run clustering example with 0.4

Posted by Sean Owen <sr...@gmail.com>.
Mahout 0.4 can't change as it has been released, but future versions? Sure,
eventually. Part of the problem is that some code in the project is still on
0.19.x. And some clusters out there are still on 0.19 or 0.20. So it's hard
to require 0.21.

And as you see, Hadoop's releases are generally binary incompatible either
way with the previous version. Lots of code will work in 0.21 but there are
small and frustrating differences like this one that make it not quite work.

If you find a way to write the code that works on 0.20 and 0.21, perhaps
avoiding this method, please submit a patch.



On Sun, Apr 10, 2011 at 4:48 PM, Xiaobo Gu <gu...@gmail.com> wrote:

> On Sun, Apr 10, 2011 at 11:44 PM, Benson Margulies
> <bi...@gmail.com> wrote:
> > The missing class is part of hadoop, and I note that you are using
> > 0.21, while Mahout 0.4 was qualified with 0.20.2.
>
> Thanks, will Mahout 0.4 support Hadoop 0.21.0 in the near future?
>
>
> > On Sun, Apr 10, 2011 at 11:42 AM, Xiaobo Gu <gu...@gmail.com>
> wrote:
> >> Hi,
> >>
> >> I have followed the steps of page
> >>
> https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep
> ,
> >>
> >> but I failed, I think it is because the examples jar has not been
> >> added to CLASSPATH, how can I add the jars to CLASSPATH,
> >>
> >>
> >> [gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job
> >> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
> >> No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
> >> 11/04/11 06:26:44 WARN driver.MahoutDriver: No
> >> org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
> >> on classpath, will use command-line arguments only
> >> Exception in thread "main" java.lang.NoSuchMethodError:
> >> org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
> >>        at
> org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
> >>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >>        at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >>        at java.lang.reflect.Method.invoke(Method.java:597)
> >>        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
> >> [gpadmin@linuxsvr ~]$
> >>
> >
>

Re: Can't run clustering example with 0.4

Posted by Xiaobo Gu <gu...@gmail.com>.
On Sun, Apr 10, 2011 at 11:44 PM, Benson Margulies
<bi...@gmail.com> wrote:
> The missing class is part of hadoop, and I note that you are using
> 0.21, while Mahout 0.4 was qualified with 0.20.2.

Thanks, will Mahout 0.4 support Hadoop 0.21.0 in the near future?


> On Sun, Apr 10, 2011 at 11:42 AM, Xiaobo Gu <gu...@gmail.com> wrote:
>> Hi,
>>
>> I have followed the steps of page
>> https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep,
>>
>> but I failed, I think it is because the examples jar has not been
>> added to CLASSPATH, how can I add the jars to CLASSPATH,
>>
>>
>> [gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
>> org.apache.mahout.clustering.syntheticcontrol.canopy.Job
>> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
>> No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
>> 11/04/11 06:26:44 WARN driver.MahoutDriver: No
>> org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
>> on classpath, will use command-line arguments only
>> Exception in thread "main" java.lang.NoSuchMethodError:
>> org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
>>        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
>> [gpadmin@linuxsvr ~]$
>>
>

Re: Can't run clustering example with 0.4

Posted by Benson Margulies <bi...@gmail.com>.
The missing class is part of hadoop, and I note that you are using
0.21, while Mahout 0.4 was qualified with 0.20.2.

On Sun, Apr 10, 2011 at 11:42 AM, Xiaobo Gu <gu...@gmail.com> wrote:
> Hi,
>
> I have followed the steps of page
> https://cwiki.apache.org/confluence/display/MAHOUT/Clustering+of+synthetic+control+data#Clusteringofsyntheticcontroldata-PrePrep,
>
> but I failed, I think it is because the examples jar has not been
> added to CLASSPATH, how can I add the jars to CLASSPATH,
>
>
> [gpadmin@linuxsvr ~]$ $MAHOUT_HOME/bin/mahout
> org.apache.mahout.clustering.syntheticcontrol.canopy.Job
> Running on hadoop, using HADOOP_HOME=/usr/local/hadoop-0.21.0
> No HADOOP_CONF_DIR set, using /usr/local/hadoop-0.21.0/conf
> 11/04/11 06:26:44 WARN driver.MahoutDriver: No
> org.apache.mahout.clustering.syntheticcontrol.canopy.Job.props found
> on classpath, will use command-line arguments only
> Exception in thread "main" java.lang.NoSuchMethodError:
> org.apache.hadoop.util.ProgramDriver.driver([Ljava/lang/String;)V
>        at org.apache.mahout.driver.MahoutDriver.main(MahoutDriver.java:184)
>        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at org.apache.hadoop.util.RunJar.main(RunJar.java:192)
> [gpadmin@linuxsvr ~]$
>