On Thu, Feb 17, 2011 at 4:03 PM, Ted Yu <[email protected]> wrote: > An alternative is to check the value of a well-known config parameter which > has changed from 20.6 (0.89) to 0.90.x > > After almost all 0.20.6 and 0.89 deployments are gone in the world, toggle > to version check. >
Better would be to use the classloader to find the hbase-default.xml path that got loaded and include that in the error. File a JIRA and let's fix for 0.90.2. -Todd > > On Thu, Feb 17, 2011 at 3:51 PM, Ted Yu <[email protected]> wrote: > > > Your change cannot distinguish missing hbase-default.xml and the old > > hbase-default.xml > > This makes debugging hard, considering what I said in my first email. > > > > > > On Thu, Feb 17, 2011 at 3:26 PM, Todd Lipcon <[email protected]> wrote: > > > >> Then you've probably got another hbase-default somewhere on your > >> classpath. > >> > >> > >> On Thu, Feb 17, 2011 at 3:26 PM, Ted Yu <[email protected]> wrote: > >> > >>> I checked the size of the packaged file which is the same as the build > >>> artifact: > >>> > >>> tyumac:hbase-0.90.1 tyu$ ls -l target/classes/hbase-default.xml > >>> -rw-r--r-- 1 tyu staff 23610 Feb 11 11:50 > >>> target/classes/hbase-default.xml > >>> > >>> I also unpacked the file and saw the correct version. > >>> > >>> > >>> On Thu, Feb 17, 2011 at 3:17 PM, Todd Lipcon <[email protected]> > wrote: > >>> > >>>> Where are you getting the hbase-defaults.xml file that you're > packaging > >>>> into your jar? > >>>> > >>>> You need to take it out of the hbase jar that ships with 0.90.1 and > >>>> package that one -- my guess is you've packaged one from an older > version. > >>>> > >>>> -Todd > >>>> > >>>> On Thu, Feb 17, 2011 at 3:01 PM, Ted Yu <[email protected]> wrote: > >>>> > >>>>> We re-package hbase jar into the jar containing our classes. > >>>>> > >>>>> [sjc1-hadoop0.sjc1:hadoop 36789]jar tvf > >>>>> /usr/local/hadoop/sims/lib/flow-m2m_hbase_regr-38.jar | grep MetaSca > >>>>> 7030 Fri Feb 11 11:50:28 GMT+00:00 2011 > >>>>> org/apache/hadoop/hbase/client/MetaScanner.class > >>>>> 2027 Fri Feb 11 11:50:28 GMT+00:00 2011 > >>>>> org/apache/hadoop/hbase/client/MetaScanner$1.class > >>>>> [sjc1-hadoop0.sjc1:hadoop 36791]jar tvf > >>>>> /usr/local/hadoop/sims/lib/flow-m2m_hbase_regr-38.jar | grep default > | > >>>>> grep > >>>>> hbase > >>>>> 23610 Fri Feb 11 11:50:22 GMT+00:00 2011 hbase-default.xml > >>>>> > >>>>> If the above jar structure is incorrect, please comment. > >>>>> > >>>>> Using 0.90.1 jar as client, I saw: > >>>>> > >>>>> INFO [2011-02-17 06:52:23] (ExecUtil.java:261) - > >>>>> java.lang.RuntimeException: hbase-default.xml file seems to be for > and > >>>>> old version of HBase (null), this version is 0.90.1 > >>>>> INFO [2011-02-17 06:52:23] (ExecUtil.java:261) - at > >>>>> > >>>>> > org.apache.hadoop.hbase.HBaseConfiguration.checkDefaultsVersion(HBaseConfiguration.java:66) > >>>>> INFO [2011-02-17 06:52:23] (ExecUtil.java:261) - at > >>>>> > >>>>> > org.apache.hadoop.hbase.HBaseConfiguration.addHbaseResources(HBaseConfiguration.java:76) > >>>>> INFO [2011-02-17 06:52:23] (ExecUtil.java:261) - at > >>>>> > >>>>> > org.apache.hadoop.hbase.HBaseConfiguration.<init>(HBaseConfiguration.java:44) > >>>>> INFO [2011-02-17 06:52:23] (ExecUtil.java:261) - at > >>>>> > >>>>> > org.apache.hadoop.hbase.HBaseConfiguration.<init>(HBaseConfiguration.java:56) > >>>>> > >>>>> I looked at Configuration.java which has quiet mode setter. But the > >>>>> above > >>>>> exception happened in ctor. > >>>>> > >>>>> Please advise how I can troubleshoot this. > >>>>> > >>>> > >>>> > >>>> > >>>> -- > >>>> Todd Lipcon > >>>> Software Engineer, Cloudera > >>>> > >>> > >>> > >> > >> > >> -- > >> Todd Lipcon > >> Software Engineer, Cloudera > >> > > > > > -- Todd Lipcon Software Engineer, Cloudera
