On Thu, Sep 20, 2012 at 5:49 PM, Jonathan Hsieh <[email protected]> wrote: > I don't know the finer details of the implementation -- does this proposed > breakage break coprocessors (requires recode, or requies recompile) or is > this change just the wire level? Sounds like things would need to be > recoded. >
Yes, the change will break coprocessor endpoints (just endpoints, not observers), and will require recoding, specifically: 1) providing PB definitions for the messages and service for the endpoint 2) running protoc to generate the code 3) implement the generated Service interface in the endpoint 4) modify client code to use the PB-based RPC interfaces > Since Coprocs are relatively new and evolving, I lean towards biting the > bullet and breaking compat at 0.96. The longer we wait, the more CP > clients out there we break, and we'd need another singularity. There are > folks building platforms on top of hbase using coprocessors -- the longer > we wait the harder it will be to make the change. > I agree that the longer we wait, it's likely the more painful it becomes. I think it theory it's nice to provide both implementations in the same release, so that coprocessor endpoint users can make the transition gradually. But in this case it might be better to yank out the old version, so that at least any new implementations don't have to go through the conversion.
