You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by Patrick Schless <pa...@gmail.com> on 2013/07/11 06:29:18 UTC
VerifyRep - "Replication needs to be enabled to verify it."
On 0.92.1, I have (recently) enabled replication, and I'm trying to verify
that it's working correctly. I am getting an error saying that replication
needs to be enabled, but replication *is* enabled, so I assume I'm doing
something wrong. Looking at the age of the last shipped op (on the master
cluster), and the age of the last applied op (on the slave cluster), I see
values, which make it look like data is flowing (and keeping up). Any idea
how I can get this job to run, to confirm things at a larger scale?
Thanks,
Patrick
patrick@job-tracker ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
--starttime=1372911043653 --stoptime=1372997453773 1 table-foo
Exception in thread "main" java.lang.reflect.InvocationTargetException
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:616)
at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:51)
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:616)
at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.io.IOException: Replication needs to be enabled to verify
it.
at
org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.createSubmittableJob(VerifyReplication.java:160)
at
org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.main(VerifyReplication.java:291)
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:616)
at
org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:72)
at
org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:144)
... 10 more
Re: VerifyRep - "Replication needs to be enabled to verify it."
Posted by Patrick Schless <pa...@gmail.com>.
Figured it out (needed to include the hbase classpath, to pick up that
config):
[patrick@job-tracker ~]$ HADOOP_CLASSPATH=`hbase classpath` hadoop jar
/usr/lib/hbase/hbase.jar verifyrep --starttime=1372911043653
--stoptime=1372997453773 1 table-foo
Thanks for the help!
- Patrick
On Thu, Jul 11, 2013 at 8:46 AM, Patrick Schless
<pa...@gmail.com>wrote:
> Yes [1], I set that in hbase-site.xml when I turned on replication. This
> box is solely my job-tracker, so maybe it doesn't pick up the
> hbase-site.xml? Trying this job from the HMaster didn't work, because it
> doesn't have the mapreduce stuff, it seems [2].
>
> [1]
> [patrick@job-tracker ~]$ grep -A3 replication
> /etc/hbase/conf/hbase-site.xml
> <name>hbase.replication</name>
> <value>true</value>
> </property>
> </configuration>
>
> [2]
> [patrick@hmaster ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
> Exception in thread "main" java.lang.NoClassDefFoundError:
> org/apache/hadoop/mapreduce/Job
> at java.lang.Class.getDeclaredMethods0(Native Method)
> at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
> at java.lang.Class.getMethod0(Class.java:2687)
> at java.lang.Class.getMethod(Class.java:1620)
> at
> org.apache.hadoop.util.ProgramDriver$ProgramDescription.<init>(ProgramDriver.java:60)
> at
> org.apache.hadoop.util.ProgramDriver.addClass(ProgramDriver.java:103)
> at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:36)
>
> 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:616)
> at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
> Caused by: java.lang.ClassNotFoundException:
> org.apache.hadoop.mapreduce.Job
> at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
> ... 12 more
>
>
>
>
>
> On Thu, Jul 11, 2013 at 1:18 AM, Bijieshan <bi...@huawei.com> wrote:
>
>> Have you checked the configuration of "hbase.replication" in local
>> hbase-site.xml? "Replication needs to be enabled to verify it." indicate
>> that configuration value is false.
>> Below is the relevant code:
>> if (!conf.getBoolean(HConstants.REPLICATION_ENABLE_KEY, false)) {
>> throw new IOException("Replication needs to be enabled to verify
>> it.");
>> }
>>
>> Jieshan
>> -----Original Message-----
>> From: Patrick Schless [mailto:patrick.schless@gmail.com]
>> Sent: Thursday, July 11, 2013 12:29 PM
>> To: user
>> Subject: VerifyRep - "Replication needs to be enabled to verify it."
>>
>> On 0.92.1, I have (recently) enabled replication, and I'm trying to verify
>> that it's working correctly. I am getting an error saying that replication
>> needs to be enabled, but replication *is* enabled, so I assume I'm doing
>> something wrong. Looking at the age of the last shipped op (on the master
>> cluster), and the age of the last applied op (on the slave cluster), I see
>> values, which make it look like data is flowing (and keeping up). Any idea
>> how I can get this job to run, to confirm things at a larger scale?
>>
>> Thanks,
>> Patrick
>>
>> patrick@job-tracker ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
>> --starttime=1372911043653 --stoptime=1372997453773 1 table-foo
>>
>> Exception in thread "main" java.lang.reflect.InvocationTargetException
>> 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:616)
>> at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:51)
>> 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:616)
>> at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
>> Caused by: java.io.IOException: Replication needs to be enabled to verify
>> it.
>> at
>>
>> org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.createSubmittableJob(VerifyReplication.java:160)
>> at
>>
>> org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.main(VerifyReplication.java:291)
>> 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:616)
>> at
>>
>> org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:72)
>> at
>> org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:144)
>> ... 10 more
>>
>
>
Re: VerifyRep - "Replication needs to be enabled to verify it."
Posted by Patrick Schless <pa...@gmail.com>.
Yes [1], I set that in hbase-site.xml when I turned on replication. This
box is solely my job-tracker, so maybe it doesn't pick up the
hbase-site.xml? Trying this job from the HMaster didn't work, because it
doesn't have the mapreduce stuff, it seems [2].
[1]
[patrick@job-tracker ~]$ grep -A3 replication
/etc/hbase/conf/hbase-site.xml
<name>hbase.replication</name>
<value>true</value>
</property>
</configuration>
[2]
[patrick@hmaster ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
Exception in thread "main" java.lang.NoClassDefFoundError:
org/apache/hadoop/mapreduce/Job
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2444)
at java.lang.Class.getMethod0(Class.java:2687)
at java.lang.Class.getMethod(Class.java:1620)
at
org.apache.hadoop.util.ProgramDriver$ProgramDescription.<init>(ProgramDriver.java:60)
at
org.apache.hadoop.util.ProgramDriver.addClass(ProgramDriver.java:103)
at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:36)
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:616)
at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.mapreduce.Job
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
... 12 more
On Thu, Jul 11, 2013 at 1:18 AM, Bijieshan <bi...@huawei.com> wrote:
> Have you checked the configuration of "hbase.replication" in local
> hbase-site.xml? "Replication needs to be enabled to verify it." indicate
> that configuration value is false.
> Below is the relevant code:
> if (!conf.getBoolean(HConstants.REPLICATION_ENABLE_KEY, false)) {
> throw new IOException("Replication needs to be enabled to verify
> it.");
> }
>
> Jieshan
> -----Original Message-----
> From: Patrick Schless [mailto:patrick.schless@gmail.com]
> Sent: Thursday, July 11, 2013 12:29 PM
> To: user
> Subject: VerifyRep - "Replication needs to be enabled to verify it."
>
> On 0.92.1, I have (recently) enabled replication, and I'm trying to verify
> that it's working correctly. I am getting an error saying that replication
> needs to be enabled, but replication *is* enabled, so I assume I'm doing
> something wrong. Looking at the age of the last shipped op (on the master
> cluster), and the age of the last applied op (on the slave cluster), I see
> values, which make it look like data is flowing (and keeping up). Any idea
> how I can get this job to run, to confirm things at a larger scale?
>
> Thanks,
> Patrick
>
> patrick@job-tracker ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
> --starttime=1372911043653 --stoptime=1372997453773 1 table-foo
>
> Exception in thread "main" java.lang.reflect.InvocationTargetException
> 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:616)
> at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:51)
> 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:616)
> at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
> Caused by: java.io.IOException: Replication needs to be enabled to verify
> it.
> at
>
> org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.createSubmittableJob(VerifyReplication.java:160)
> at
>
> org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.main(VerifyReplication.java:291)
> 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:616)
> at
>
> org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:72)
> at
> org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:144)
> ... 10 more
>
RE: VerifyRep - "Replication needs to be enabled to verify it."
Posted by Bijieshan <bi...@huawei.com>.
Have you checked the configuration of "hbase.replication" in local hbase-site.xml? "Replication needs to be enabled to verify it." indicate that configuration value is false.
Below is the relevant code:
if (!conf.getBoolean(HConstants.REPLICATION_ENABLE_KEY, false)) {
throw new IOException("Replication needs to be enabled to verify it.");
}
Jieshan
-----Original Message-----
From: Patrick Schless [mailto:patrick.schless@gmail.com]
Sent: Thursday, July 11, 2013 12:29 PM
To: user
Subject: VerifyRep - "Replication needs to be enabled to verify it."
On 0.92.1, I have (recently) enabled replication, and I'm trying to verify
that it's working correctly. I am getting an error saying that replication
needs to be enabled, but replication *is* enabled, so I assume I'm doing
something wrong. Looking at the age of the last shipped op (on the master
cluster), and the age of the last applied op (on the slave cluster), I see
values, which make it look like data is flowing (and keeping up). Any idea
how I can get this job to run, to confirm things at a larger scale?
Thanks,
Patrick
patrick@job-tracker ~]$ hadoop jar /usr/lib/hbase/hbase.jar verifyrep
--starttime=1372911043653 --stoptime=1372997453773 1 table-foo
Exception in thread "main" java.lang.reflect.InvocationTargetException
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:616)
at org.apache.hadoop.hbase.mapreduce.Driver.main(Driver.java:51)
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:616)
at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.io.IOException: Replication needs to be enabled to verify
it.
at
org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.createSubmittableJob(VerifyReplication.java:160)
at
org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication.main(VerifyReplication.java:291)
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:616)
at
org.apache.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:72)
at
org.apache.hadoop.util.ProgramDriver.driver(ProgramDriver.java:144)
... 10 more