apurtell commented on a change in pull request #2261: URL: https://github.com/apache/hbase/pull/2261#discussion_r471671371
########## File path: hbase-client/src/main/java/org/apache/hadoop/hbase/client/AdminOverAsyncAdmin.java ########## @@ -1057,4 +1057,9 @@ public void updateRSGroupConfig(String groupName, Map<String, String> configurat throws IOException { get(admin.updateRSGroupConfig(groupName, configuration)); } + + @Override + public List<BalancerDecisionRecords> getBalancerDecisions() throws IOException { Review comment: Something to consider: Rather than adding new API for every ringbuffer backed type, since the ringbuffers are named, can we just have one API that retrieves records from a buffer specified by name? E.g. public List<LogEntry> getLogEntries(String name) Then, LogEntry is a generic type capable of accepting any protobuf encoding. Then, we derive new types from LogEntry such as BalancerDecision. Have a static method in LogEntry for instantiating the subclasses by reflection based on what type is communicated by the protobuf. If _LogEntry_ is too generic a name, consider _RingEntry_. (I'm not the best at naming, maybe someone else has a better idea...) It is a lot easier to add or remove specialized classes as these things evolve than add or remove methods from public/stable admin APIs. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org