You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Bryan Duxbury (JIRA)" <ji...@apache.org> on 2008/07/04 18:27:45 UTC

[jira] Commented: (HBASE-657) InvalidColumnNameException not passed through to Thrift interface

    [ https://issues.apache.org/jira/browse/HBASE-657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12610616#action_12610616 ] 

Bryan Duxbury commented on HBASE-657:
-------------------------------------

It seems that not only does the exception not get through the thrift interface to the client, but it's actually getting trapped by HTable and used as a reason to retry the operation. Or was there more stack trace that's been removed from this issue?

> InvalidColumnNameException not passed through to Thrift interface
> -----------------------------------------------------------------
>
>                 Key: HBASE-657
>                 URL: https://issues.apache.org/jira/browse/HBASE-657
>             Project: Hadoop HBase
>          Issue Type: Bug
>          Components: thrift
>    Affects Versions: 0.1.2
>            Reporter: Todd Lipcon
>            Assignee: Bryan Duxbury
>            Priority: Minor
>
> If an invalid column name is passed to the Thrift server, the InvalidColumnNameException is not caught and turned into a Thrift exception. Debug output:
> 08/05/29 20:34:30 DEBUG thrift.ThriftServer$HBaseHandler: get: table=test_table, row=todd, col=foobar
> 08/05/29 20:34:30 DEBUG hbase.HTable: reloading table servers because: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> 08/05/29 20:34:40 DEBUG hbase.HTable: reloading table servers because: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> 08/05/29 20:34:50 DEBUG hbase.HTable: reloading table servers because: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> 08/05/29 20:35:00 DEBUG hbase.HTable: reloading table servers because: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> 08/05/29 20:35:10 DEBUG hbase.HTable: Trying to contact region server for row 'todd', but failed after 5 attempts.
> Exception 1:
> org.apache.hadoop.hbase.InvalidColumnNameException: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> Exception 1:
> org.apache.hadoop.hbase.InvalidColumnNameException: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> Exception 1:
> org.apache.hadoop.hbase.InvalidColumnNameException: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)
> Exception 1:
> org.apache.hadoop.hbase.InvalidColumnNameException: org.apache.hadoop.hbase.InvalidColumnNameException: foobar is missing the colon family/qualifier separator
>         at org.apache.hadoop.hbase.HStoreKey.getColonOffset(HStoreKey.java:335)
>         at org.apache.hadoop.hbase.HStoreKey.extractFamily(HStoreKey.java:295)
>         at org.apache.hadoop.hbase.HRegion.checkColumn(HRegion.java:1676)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1191)
>         at org.apache.hadoop.hbase.HRegion.get(HRegion.java:1154)
>         at org.apache.hadoop.hbase.HRegionServer.get(HRegionServer.java:1402)
>         at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:413)
>         at org.apache.hadoop.ipc.Server$Handler.run(Server.java:901)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.