[ https://issues.apache.org/jira/browse/HBASE-3661?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Work on HBASE-3661 started by Michael Drzal. > Handle empty qualifier better in shell for increments > ----------------------------------------------------- > > Key: HBASE-3661 > URL: https://issues.apache.org/jira/browse/HBASE-3661 > Project: HBase > Issue Type: Improvement > Components: shell > Affects Versions: 0.92.0 > Reporter: Lars George > Assignee: Michael Drzal > Priority: Minor > Attachments: HBASE-3661.patch > > > When trying to increment a counter using the examples, which specify no > *explicit* qualifier you get an error: > {code} > hbase(main):014:0> incr 'testtable', 'cnt1', 'colfam1', 1 > ERROR: org.apache.hadoop.hbase.client.RetriesExhaustedException: Trying to > contact region server 10.0.0.57:51640 for region > testtable,,1300267113942.cd2e7925140eb414d519621e384fb654., row 'cnt1', but > failed after 7 attempts. > Exceptions: > java.io.IOException: java.io.IOException: java.lang.NullPointerException > at > org.apache.hadoop.hbase.regionserver.ColumnCount.<init>(ColumnCount.java:47) > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.<init>(ExplicitColumnTracker.java:69) > at > org.apache.hadoop.hbase.regionserver.ScanQueryMatcher.<init>(ScanQueryMatcher.java:93) > at > org.apache.hadoop.hbase.regionserver.StoreScanner.<init>(StoreScanner.java:65) > at > org.apache.hadoop.hbase.regionserver.Store.getScanner(Store.java:1436) > at > org.apache.hadoop.hbase.regionserver.HRegion$RegionScanner.<init>(HRegion.java:2412) > at > org.apache.hadoop.hbase.regionserver.HRegion.instantiateInternalScanner(HRegion.java:1185) > at > org.apache.hadoop.hbase.regionserver.HRegion.getScanner(HRegion.java:1171) > at > org.apache.hadoop.hbase.regionserver.HRegion.getScanner(HRegion.java:1155) > at > org.apache.hadoop.hbase.regionserver.HRegion.getLastIncrement(HRegion.java:3087) > at > org.apache.hadoop.hbase.regionserver.HRegion.incrementColumnValue(HRegion.java:3312) > at > org.apache.hadoop.hbase.regionserver.HRegionServer.incrementColumnValue(HRegionServer.java:2570) > 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.WritableRpcEngine$Server.call(WritableRpcEngine.java:309) > at > org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:1060) > Here is some help for this command: > Increments a cell 'value' at specified table/row/column coordinates. > To increment a cell value in table 't1' at row 'r1' under column > 'c1' by 1 (can be omitted) or 10 do: > hbase> incr 't1', 'r1', 'c1' > hbase> incr 't1', 'r1', 'c1', 1 > hbase> incr 't1', 'r1', 'c1', 10 > {code} > Handle this more gracefully (printing 5 stacktraces is ugly), improve the > help to specify what is needed more clearly. Or fix the server side to > support this, if this makes sense, and therefore never triggering this issue. > Adding a qualifier makes it work: > {code} > hbase(main):015:0> incr 'testtable', 'cnt1', 'colfam1:test', 1 > COUNTER VALUE = 1 > hbase(main):016:0> incr 'testtable', 'cnt1', 'colfam1:test', 1 > COUNTER VALUE = 2 > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira