[ https://issues.apache.org/jira/browse/HBASE-12979?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrew Purtell updated HBASE-12979: ----------------------------------- Description: In HBASE-5162 (and backports such as HBASE-12729) we modified some HRegion methods to return statistics for consumption by callers. The statistics are ultimately passed back to the client as load feedback. [~lhofhansl] thinks handing back this information as return values from HRegion methods is a weird mix of concerns. This also produced a difficult to anticipate binary compatibility issue with Phoenix. There was no compile time issue because the code of course was not structured to assign from a method returning void, yet the method signature changes so the JVM cannot resolve it if older Phoenix binaries are installed into a 0.98.10 release. Let's change the HRegion methods back to returning 'void' and use setters instead. Officially we don't support use of HRegion (HBASE-12566) but we do not need to go out of our way to break things (smile) so I would also like to make a patch release containing just this change to help out our sister project. was: In HBASE-5162 (and backports such as HBASE-12729) we modified some HRegion methods to return statistics for consumption by callers. The statistics are ultimately passed back to the client as load feedback. [~lhofhansl] thinks returning this information is a weird mix of concerns. This also produced a difficult to anticipate binary compatibility issue with Phoenix. There was no compile time issue because the code of course was not structured to assign from a method returning void, yet the method signature changes so the JVM cannot resolve it if older Phoenix binaries are installed into a 0.98.10 release. Let's change the HRegion methods back to returning 'void' and use setters instead. Officially we don't support use of HRegion (HBASE-12566) but we do not need to go out of our way to break things (smile) so I would also like to make a patch release containing just this change to help out our sister project. > Use setters instead of return values for handing back statistics from HRegion > methods > ------------------------------------------------------------------------------------- > > Key: HBASE-12979 > URL: https://issues.apache.org/jira/browse/HBASE-12979 > Project: HBase > Issue Type: Improvement > Affects Versions: 0.98.10 > Reporter: Andrew Purtell > Assignee: Andrew Purtell > Labels: phoenix > Fix For: 0.98.10.1 > > > In HBASE-5162 (and backports such as HBASE-12729) we modified some HRegion > methods to return statistics for consumption by callers. The statistics are > ultimately passed back to the client as load feedback. > [~lhofhansl] thinks handing back this information as return values from > HRegion methods is a weird mix of concerns. This also produced a difficult to > anticipate binary compatibility issue with Phoenix. There was no compile time > issue because the code of course was not structured to assign from a method > returning void, yet the method signature changes so the JVM cannot resolve it > if older Phoenix binaries are installed into a 0.98.10 release. Let's change > the HRegion methods back to returning 'void' and use setters instead. > Officially we don't support use of HRegion (HBASE-12566) but we do not need > to go out of our way to break things (smile) so I would also like to make a > patch release containing just this change to help out our sister project. -- This message was sent by Atlassian JIRA (v6.3.4#6332)