[GitHub] [hbase] Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes
Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes URL: https://github.com/apache/hbase/pull/1487#discussion_r408550036 ## File path: src/main/asciidoc/_chapters/cp.adoc ## @@ -193,6 +209,12 @@ link:https://issues.apache.org/jira/browse/HBASE-5448[HBASE-5448]). To upgrade y HBase cluster from 0.94 or earlier to 0.96 or later, you need to reimplement your coprocessor. +In HBase 2.0.0, we make use of a shaded version of protobuf 3.x, but still keep the +protobuf for coprocessor on 2.5.0. In 3.0.0, we removed all dependencies on non-shaded +protobuf so you need to reimplement your coprocessor to make use of the shaded protobuf +version provided in hbase-thirdparty. Please see the <> section for Review comment: Yes, I think it is LimitedPrivate for CPEPs. What I said above is that, we had this consensus in the past, otherwise we did not need to provide a hbase-protocol module which duplicates a lot of proto files... 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 With regards, Apache Git Services
[GitHub] [hbase] Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes
Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes URL: https://github.com/apache/hbase/pull/1487#discussion_r407953548 ## File path: src/main/asciidoc/_chapters/cp.adoc ## @@ -193,6 +209,12 @@ link:https://issues.apache.org/jira/browse/HBASE-5448[HBASE-5448]). To upgrade y HBase cluster from 0.94 or earlier to 0.96 or later, you need to reimplement your coprocessor. +In HBase 2.0.0, we make use of a shaded version of protobuf 3.x, but still keep the +protobuf for coprocessor on 2.5.0. In 3.0.0, we removed all dependencies on non-shaded +protobuf so you need to reimplement your coprocessor to make use of the shaded protobuf +version provided in hbase-thirdparty. Please see the <> section for Review comment: I think this is why we need a hbase-protocol modue in the past? The CPEP implementation could reference the protobuf defination. And in general, adding breaking changes to proto files is a no no, it will break wire compatible, so I think it is fine to reference them? 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 With regards, Apache Git Services
[GitHub] [hbase] Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes
Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes URL: https://github.com/apache/hbase/pull/1487#discussion_r407952251 ## File path: src/main/asciidoc/_chapters/protobuf.adoc ## @@ -148,3 +148,67 @@ consider extending it also in Going forward, we will provide a new module of common types for use by CPEPs that will have the same guarantees against change as does our public API. TODO. + +=== protobuf changes for hbase-3.0.0 (HBASE-23797) +Since hadoop also shades protobuf and bumps the version to 3.x, there is no Review comment: It's hadoop 3.3.x. 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 With regards, Apache Git Services
[GitHub] [hbase] Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes
Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes URL: https://github.com/apache/hbase/pull/1487#discussion_r407928861 ## File path: src/main/asciidoc/_chapters/protobuf.adoc ## @@ -148,3 +148,67 @@ consider extending it also in Going forward, we will provide a new module of common types for use by CPEPs that will have the same guarantees against change as does our public API. TODO. + +=== protobuf changes for hbase-3.0.0 (HBASE-23797) +Since hadoop also shades protobuf and bumps the version to 3.x, there is no +reason for us to stay on protobuf 2.5.0 any more. + +In 3.0.0, the hbase-protocol module has been purged, the CPEP implementation +should use the protos in hbase-protocol-shaded module, and also make use of +the shaded protobuf in hbase-thirdparty. Review comment: We will keep protobuf version compatible for a whole major release, so maybe we could upgrade from 3.11.4 to 3.11.5 or even 3.12.0 for a new minor release line but we will never upgrade to 4.0.0. We could add this here. 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 With regards, Apache Git Services
[GitHub] [hbase] Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes
Apache9 commented on a change in pull request #1487: HBASE-23800 Add documentation about the CECPs changes URL: https://github.com/apache/hbase/pull/1487#discussion_r407927726 ## File path: src/main/asciidoc/_chapters/protobuf.adoc ## @@ -148,3 +148,67 @@ consider extending it also in Going forward, we will provide a new module of common types for use by CPEPs that will have the same guarantees against change as does our public API. TODO. + +=== protobuf changes for hbase-3.0.0 (HBASE-23797) +Since hadoop also shades protobuf and bumps the version to 3.x, there is no +reason for us to stay on protobuf 2.5.0 any more. + +In 3.0.0, the hbase-protocol module has been purged, the CPEP implementation +should use the protos in hbase-protocol-shaded module, and also make use of +the shaded protobuf in hbase-thirdparty. + +Add this dependency to your pom: +[source,xml] + + + org.apache.hbase.thirdparty + hbase-shaded-protobuf + + ${hbase-thirdparty.version} + provided + + + +And typically you also need to add this plugin to your pom to make your +generated protobuf code also use the shaded and relocated protobuf version +in hbase-thirdparty. Review comment: There is an example in hbase-examples module. 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 With regards, Apache Git Services