[ https://issues.apache.org/jira/browse/HBASE-2259?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ryan rawson updated HBASE-2259: ------------------------------- Attachment: HBASE-2259-tail-recursive.patch This is the kind of thing I'm talking about. It should be recognizable to people as a tail recursive call, and the JIT should be optimize this better. > StackOverflow in ExplicitColumnTracker when row has many columns > ---------------------------------------------------------------- > > Key: HBASE-2259 > URL: https://issues.apache.org/jira/browse/HBASE-2259 > Project: Hadoop HBase > Issue Type: Bug > Affects Versions: 0.20.3 > Reporter: Erik Rozendaal > Assignee: Jean-Daniel Cryans > Fix For: 0.20.4, 0.21.0 > > Attachments: HBASE-2259-tail-recursive.patch, HBASE-2259.patch > > > When doing a "get" on a row with many columns and where the "get" also > contains many columns to get a stack overflow is thrown in the > ExplicitColumnTracker: > java.io.IOException: java.io.IOException: java.lang.StackOverflowError > at > org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:872) > at > org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:862) > at > org.apache.hadoop.hbase.regionserver.HRegionServer.get(HRegionServer.java:1733) > at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source) > 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:657) > at > org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:915) > Caused by: java.lang.StackOverflowError > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.checkColumn(ExplicitColumnTracker.java:122) > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.checkColumn(ExplicitColumnTracker.java:123) > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.checkColumn(ExplicitColumnTracker.java:123) > [... repeats many times ...] > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.checkColumn(ExplicitColumnTracker.java:123) > at > org.apache.hadoop.hbase.regionserver.ExplicitColumnTracker.checkColumn(ExplicitColumnTracker.java:123) > at > org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:1048) > at org.apache.hadoop.hbase.client.HTable.get(HTable.java:417) -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.