hi folks, We have added many Public "read-only" interface in 2.0 to save user from the dangerous operations. For example, TableDescriptor, ColumnFamilyDescriptor, Region, Store, etc. However, this change make us be hard to enhance these interface (ie. add the new APIs) because the BC will be broken for the user having the subclass of these interfaces. In contrast with Cell, Filter, and coprocessor, these new interfaces are NOT designed to be a extendable class for user but we have no explicit caveat. As I see it, it is necessary to introduce an new annotation to explicitly say "you CAN extend this Public class with the BC guarantee". User should not extend the Public classes which don't have the such annotation.
Any suggestions? Cheers Chia-Ping