[
https://issues.apache.org/jira/browse/HBASE-2313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12845727#action_12845727
]
stack commented on HBASE-2313:
------------------------------
Should 'debug' show in the help Alexey? I don't see it.
I'm pretty sure I have the patch in place... but I'm seeing unexpected
behaviors.
I did this:
{code}
pynchon-2:trunk stack$ ./bin/hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version: 0.21.0-SNAPSHOT, r923404, Mon Mar 15 22:38:16 PDT 2010
hbase(main):001:0> create 'y', 'y'
0 row(s) in 1.4720 seconds
hbase(main):002:0> put 'y', 'y', 'y:y', 'y'
0 row(s) in 0.0430 seconds
hbase(main):003:0> scan 'y'
ROW COLUMN+CELL
y column=y:y, timestamp=1268718421786, value=y
1 row(s) in 0.0340 seconds
hbase(main):004:0> put 'y', 'y', 'z:z', 'y'
..
{code}
... and got a load of this:
{code}
java.util.concurrent.ExecutionException:
org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException:
org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: Column family
z does not exist in region y,,1268718407213 in table {NAME => 'y', FAMILIES =>
[{NAME => 'y', REPLICATION_SCOPE => '0', COMPRESSION => 'NONE', VERSIONS =>
'3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => 'false',
BLOCKCACHE => 'true'}]}
at
org.apache.hadoop.hbase.regionserver.HRegion.checkFamily(HRegion.java:2438)
at org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1276)
at org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1243)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.put(HRegionServer.java:1714)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.multiPut(HRegionServer.java:2448)
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.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:576)
at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:919)
java.util.concurrent.ExecutionException:
org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException:
org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: Column family
z does not exist in region y,,1268718407213 in table {NAME => 'y', FAMILIES =>
[{NAME => 'y', REPLICATION_SCOPE => '0', COMPRESSION => 'NONE', VERSIONS =>
'3', TTL => '2147483647', BLOCKSIZE => '65536', IN_MEMORY => 'false',
BLOCKCACHE => 'true'}]}
at
org.apache.hadoop.hbase.regionserver.HRegion.checkFamily(HRegion.java:2438)
at org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1276)
at org.apache.hadoop.hbase.regionserver.HRegion.put(HRegion.java:1243)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.put(HRegionServer.java:1714)
at
org.apache.hadoop.hbase.regionserver.HRegionServer.multiPut(HRegionServer.java:2448)
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.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:576)
at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:919)
..
{code}
Should I only see above if debug enabled? it was a new shell. I hadn't set
debug.
It does the right thing nicely if I try to scan a nonexistent table.
Or, here if I try to create a new table on top of an extant one:
{code}
hbase(main):014:0> create 'x', 'x'
ERROR: org.apache.hadoop.hbase.TableExistsException:
org.apache.hadoop.hbase.TableExistsException: x
at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:815)
at org.apache.hadoop.hbase.master.HMaster.createTable(HMaster.java:780)
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.hbase.ipc.HBaseRPC$Server.call(HBaseRPC.java:576)
at
org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:919)
Here is some help for this command:
Create table; pass table name, a dictionary of specifications per
column family, and optionally a dictionary of table configuration.
Dictionaries are described below in the GENERAL NOTES section.
Examples:
hbase> create 't1', {NAME => 'f1', VERSIONS => 5}
hbase> create 't1', {NAME => 'f1'}, {NAME => 'f2'}, {NAME => 'f3'}
hbase> # The above in shorthand would be the following:
hbase> create 't1', 'f1', 'f2', 'f3'
hbase> create 't1', {NAME => 'f1', VERSIONS => 1, TTL => 2592000,
BLOCKCACHE => true}
{code}
In the above case i'd not set debug?
> Nit-pick about hbase-2279 shell fixup, if you do get with non-existant column
> family, throws lots of exceptions
> ---------------------------------------------------------------------------------------------------------------
>
> Key: HBASE-2313
> URL: https://issues.apache.org/jira/browse/HBASE-2313
> Project: Hadoop HBase
> Issue Type: Bug
> Affects Versions: 0.21.0
> Reporter: stack
> Assignee: Alexey Kovyrin
> Fix For: 0.21.0
>
> Attachments: HBASE-2313.2.patch, HBASE-2313.3.patch,
> HBASE-2313.4.patch, HBASE-2313.patch
>
>
> I believe the old shell would complain once only.. .or at least, it didn't
> print out so many fat exceptions. New fixedup shell will retry a bunch of
> times with a fat stack trace each time. Assigning Alexey 'cos he asked for
> it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.