Unfortunately Protobuf has made the decision of breaking binary
compatibility between the frequently changing major versions,
creating a Guava-like problem.

Since Omid (or rather HBase/Phoenix) is frequently used together with other
Hadoop-adjacent software depending on Protobuf, many of which use
unallocated protobuf,
we need to solve this somehow.

To avoid adding another repo, we could add protobuf to the existing
phoenix-thirdparty repo, since Omid is a Phoenix subproject now.

Istvan

On Wed, Oct 2, 2024 at 1:51 PM Villő Szűcs <szucsvi...@cloudera.com.invalid>
wrote:

> Hey all,
> I've been working on OMID-284 and OMID-276, specifically attempting to
> upgrade Protobuf in OMID, and I've encountered several challenges that I
> want to bring to the community for discussion.
>
> I tried upgrading Protobuf to version 4.28.2: see PR #170
> <https://github.com/apache/phoenix-omid/pull/170>. The primary motivation
> for using this version was to align with hbase-thirdparty, which also uses
> Protobuf 4. However, during testing, I encountered the following failure:
>
> java.lang.NoSuchMethodError:org.apache.hadoop.hdfs.server.namenode.FsImageProto$FileSummary.makeExtensionsImmutable()V
> This error suggests that Hadoop is still using an older version of
> Protobuf, and this is causing compatibility issues.
> I also tried using Protobuf version 3.25.5, and it worked without any test
> failures. However, this is not aligned with the Protobuf version used in
> hbase-thirdparty, and if we try to fully switch to hbase-thirdparty's
> shaded Protobuf, we are likely to run into the same issues that I faced
> with Protobuf 4.
>
> To resolve this, my current suggestion is to create a new Omid-thirdparty
> repository and shade Protobuf there. This would help us isolate OMID's
> dependencies and avoid any conflicts with Hadoop's older Protobuf version.
>
> Do you think creating an Omid-thirdparty repository for shading Protobuf is
> a viable solution?
> Are there any other options that might avoid introducing a new repository
> while still addressing the compatibility issues?
>
> Thanks in advance for your input!
> Best,
> Villő
>


-- 
*István Tóth* | Sr. Staff Software Engineer
*Email*: st...@cloudera.com
cloudera.com <https://www.cloudera.com>
[image: Cloudera] <https://www.cloudera.com/>
[image: Cloudera on Twitter] <https://twitter.com/cloudera> [image:
Cloudera on Facebook] <https://www.facebook.com/cloudera> [image: Cloudera
on LinkedIn] <https://www.linkedin.com/company/cloudera>
------------------------------
------------------------------

Reply via email to