Hi Robin, Were you finally able to find the issue?
JM 2013/4/18 Robin Gowin <[email protected]>: > same results with @null (i had earlier tried nil, same thing) > > hbase(main):045:0> uu = @hbase.table('robin1', @null) > => Hbase::Table - robin1 > hbase(main):046:0> uu.scan(ss) > NoMethodError: undefined method `internal_command' for nil:NilClass > > One thing I'm curious about - might not matter - the output of my > @hbase.table command looks like this > > => Hbase::Table - robin1 > > but the output of yours (and what is in the book) looks like this > > => #<Hbase::Table:0x3a8cbb70 > > > > > On Thu, Apr 18, 2013 at 12:17 PM, Jean-Marc Spaggiari < > [email protected]> wrote: > >> Interesting... >> >> I tried the same locally and it's working fine for me. >> >> hbase(main):010:0> uu = @hbase.table('TestAcidGuarantees', @formatter) >> => #<Hbase::Table:0x3a8cbb70 >> @table=#<Java::OrgApacheHadoopHbaseClient::HTable:0x6d65d417>> >> hbase(main):011:0> ss = {COLUMNS => ['A']} >> => {"COLUMNS"=>["A"]} >> hbase(main):012:0> uu.scan(ss) >> => {"test_row_0"=>{"A:col0"=>"timestamp=1366299718358, >> value=\\x14\\xC2\\xF0\\x0...." >> >> I did a cut&paste from what you sent and only changed the table name. >> >> Can you try with @null instead of @formatter? >> >> JM >> >> 2013/4/18 Robin Gowin <[email protected]> >> >> > Hi Jean-Marc, >> > >> > Thanks for your quick reply. Yes I am trying to do something like that. >> For >> > brevity I combined everything into one jruby command. >> > >> > My command can be split into two and I get the same error. For example, >> > this shows a similar problem using the scan method: >> > >> > hbase(main):041:0> uu = @hbase.table('robin1', @formatter) >> > => Hbase::Table - robin1 >> > hbase(main):042:0> ss = {COLUMNS => ['cf1']} >> > => {"COLUMNS"=>["cf1"]} >> > hbase(main):043:0> uu.scan(ss) >> > NoMethodError: undefined method `internal_command' for >> > #<Shell::Formatter::Console:0x15f6ae4d> >> > >> > hbase(main):044:0> scan 'robin1', ss >> > ROW COLUMN+CELL >> > >> > >> > myrow1 column=cf1:q1, >> > timestamp=1366046037514, value=value2 >> > >> > myrow1 column=cf1:q2, >> > timestamp=1366046489446, value=value2b >> > >> > myrow1 column=cf1:q2b, >> > timestamp=1366046497799, value=value2bb >> > >> > myrow2 column=cf1:q2b, >> > timestamp=1366046731281, value=value2bbce >> > >> > myrow2 column=cf1:q2be, >> > timestamp=1366046748001, value=value2bbce >> > >> > 2 row(s) in 0.0460 seconds >> > >> > >> > >> > >> > >> > On Thu, Apr 18, 2013 at 11:54 AM, Jean-Marc Spaggiari < >> > [email protected]> wrote: >> > >> > > Hi Robin, >> > > >> > > I'm not sure about your command line >> > > (@hbase.table('robin1',@formatter).scan({'COLUMNS' => ['cf1']})) >> > > >> > > Are you trying do to something like that? scan 'robin1', {COLUMNS >> > > => ['cf1']} >> > > >> > > JM >> > > >> > > 2013/4/18 Robin Gowin <[email protected]> >> > > >> > > > This feels like a stupid mistake I'm making somewhere but I searched >> > for >> > > > quite a while and did not find any evidence that anybody else >> reported >> > > this >> > > > problem. >> > > > >> > > > I'm trying to use hbase shell to call the 'scan()' method and I keep >> > > > getting the same error message. A regular scan of the table works >> fine. >> > > > >> > > > I'd appreciate any assistance. >> > > > >> > > > hbase(main):005:0> scan 'robin1' >> > > > ROW COLUMN+CELL >> > > > >> > > > >> > > > myrow1 column=cf1:q1, >> > > > timestamp=1366046037514, value=value2 >> > > > >> > > > myrow1 column=cf1:q2, >> > > > timestamp=1366046489446, value=value2b >> > > > >> > > > myrow1 column=cf1:q2b, >> > > > timestamp=1366046497799, value=value2bb >> > > > >> > > > myrow2 column=cf1:q2b, >> > > > timestamp=1366046731281, value=value2bbce >> > > > >> > > > myrow2 column=cf1:q2be, >> > > > timestamp=1366046748001, value=value2bbce >> > > > >> > > > 2 row(s) in 0.1290 seconds >> > > > >> > > > hbase(main):007:0> @hbase.table('robin1', @formatter).scan({'COLUMNS' >> > => >> > > > ['cf1']}) >> > > > NoMethodError: undefined method `internal_command' for >> > > > #<Shell::Formatter::Console:0x15f6ae4d> >> > > > >> > > > this method appears to exist >> > > > >> > > > [cloudera@localhost test]$ grep internal_command >> > > > /usr/lib/hbase/lib/ruby/shell.rb >> > > > internal_command(command, :command, *args) >> > > > def internal_command(command, method_name= :command, *args) >> > > > >> > > > >> > > > info about my environment: >> > > > >> > > > [cloudera@localhost test]$ hbase version >> > > > 13/04/18 11:17:33 INFO util.VersionInfo: HBase 0.94.2-cdh4.2.0 >> > > > 13/04/18 11:17:33 INFO util.VersionInfo: Subversion >> > > > >> > > > >> > > >> > >> file:///data/1/jenkins/workspace/generic-package-rhel64-6-0/topdir/BUILD/hbase-0.94.2-cdh4.2.0 >> > > > -r Unknown >> > > > 13/04/18 11:17:33 INFO util.VersionInfo: Compiled by jenkins on Fri >> Feb >> > > 15 >> > > > 11:51:18 PST 2013 >> > > > [cloudera@localhost test]$ java -version >> > > > java version "1.6.0_31" >> > > > Java(TM) SE Runtime Environment (build 1.6.0_31-b04) >> > > > Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode) >> > > > [cloudera@localhost test]$ hadoop version >> > > > Hadoop 2.0.0-cdh4.2.0 >> > > > Subversion >> > > > >> > > > >> > > >> > >> file:///data/1/jenkins/workspace/generic-package-rhel64-6-0/topdir/BUILD/hadoop-2.0.0-cdh4.2.0/src/hadoop-common-project/hadoop-common >> > > > -r 8bce4bd28a464e0a92950c50ba01a9deb1d85686 >> > > > Compiled by jenkins on Fri Feb 15 11:13:32 PST 2013 >> > > > From source with checksum 3eefc211a14ac7b6e764d6ded2eeeb26 >> > > > [cloudera@localhost test]$ uname -a >> > > > Linux localhost.localdomain 2.6.32-220.23.1.el6.x86_64 #1 SMP Mon Jun >> > 18 >> > > > 18:58:52 BST 2012 x86_64 x86_64 x86_64 GNU/Linux >> > > > >> > > > Robin Gowin >> > > > >> > > > PS: I found this email list from the book "HBase In Action" >> > > > >> > > >> > >>
