More info on HDDS-11351: TLDR: The change is wire compatible but requires updating protolock.
XiChen pointed out that both hdds.proto and ScmServerDatanodeHeartbeatProtocol.proto have the same proto package "hadoop.hdds". So, we could safely move StorageTypeProto from ScmServerDatanodeHeartbeatProtocol.proto to hdds.proto. The only difference is the java_outer_classname. Fortunately, ScmServerDatanodeHeartbeatProtocol.proto is a non-user facing internal protocol and the change is wire compatible. (It is API incompatible but it is fine since the protocol is not a public API.) So there are no compatibility issues. A problem is that we need to update the protolock file. If we are going to do it, let's also rename ScmServerDatanodeHeartbeatProtocol.proto to StorageContainerDatanodeProtocol.proto, i.e. make it consistent with its java_outer_classname. Tsz-Wo [1] https://github.com/apache/ozone/pull/7109#discussion_r2008750162 On Sat, Mar 29, 2025 at 10:04 AM Tsz-Wo Nicholas Sze <szets...@gmail.com> wrote: > Hi Ozone dev, > > HDDS-11351 is unifying the protobuf definition of StorageType. How about > we get it in 2.0.0? > > Sorry that I came with this idea late. > > Tsz-Wo > > > > On Wed, Mar 26, 2025 at 11:05 PM Wei-Chiu Chuang <weic...@apache.org> > wrote: > >> By the way, build environment: >> >> x86, Amazon Linux, OpenJDK8, Maven 3.9.9, gcc 11 >> >> build parameters: >> mvn clean install -Dmaven.javadoc.skip=true -DskipTests -Psign,dist,src >> -Dtar -Dgpg.keyname="$CODESIGNINGKEY" -Drocks_tools_native >> >> # cat /etc/amazon-linux-release >> Amazon Linux release 2023.6.20250317 (Amazon Linux) >> >> # java -version >> openjdk version "1.8.0_442" >> OpenJDK Runtime Environment Corretto-8.442.06.1 (build 1.8.0_442-b06) >> OpenJDK 64-Bit Server VM Corretto-8.442.06.1 (build 25.442-b06, mixed >> mode) >> >> # mvn -v >> Apache Maven 3.9.9 (8e8579a9e76f7d015ee5ec7bfcdc97d260186937) >> Maven home: /root/apache-maven-3.9.9 >> Java version: 1.8.0_442, vendor: Amazon.com Inc., runtime: >> /usr/lib/jvm/java-1.8.0-amazon-corretto.x86_64/jre >> Default locale: en, platform encoding: UTF-8 >> OS name: "linux", version: "6.1.130-139.222.amzn2023.x86_64", arch: >> "amd64", family: "unix" >> >> # g++ -v >> Using built-in specs. >> COLLECT_GCC=g++ >> COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-amazon-linux/11/lto-wrapper >> OFFLOAD_TARGET_NAMES=nvptx-none >> OFFLOAD_TARGET_DEFAULT=1 >> Target: x86_64-amazon-linux >> Configured with: ../configure --enable-bootstrap --enable-host-pie >> --enable-host-bind-now --enable-languages=c,c++,fortran,lto --prefix=/usr >> --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl= >> https://github.com/amazonlinux/amazon-linux-2022 --enable-shared >> --enable-threads=posix --enable-checking=release --with-system-zlib >> --enable-__cxa_atexit --disable-libunwind-exceptions >> --enable-gnu-unique-object --enable-linker-build-id >> --with-gcc-major-version-only --enable-plugin --enable-initfini-array >> >> --with-isl=/builddir/build/BUILD/gcc-11.5.0-20240719/obj-x86_64-amazon-linux/isl-install >> --enable-multilib --with-linker-hash-style=gnu >> --enable-offload-targets=nvptx-none --without-cuda-driver >> --enable-gnu-indirect-function --enable-cet --with-tune=generic >> --with-arch_64=x86-64-v2 --with-arch_32=x86-64 --build=x86_64-amazon-linux >> --with-build-config=bootstrap-lto --enable-link-serialization=1 >> Thread model: posix >> Supported LTO compression algorithms: zlib zstd >> gcc version 11.5.0 20240719 (Red Hat 11.5.0-5) (GCC) >> >> >> >> >> On Wed, Mar 26, 2025 at 10:58 PM Wei-Chiu Chuang <weic...@apache.org> >> wrote: >> >> > Here's RC1 vote: >> > >> > Git tag: https://github.com/apache/ozone/releases/tag/ozone-2.0.0-RC1 >> > A total of 1699 resolved jiras: >> > >> https://issues.apache.org/jira/issues/?jql=project%20%3D%20HDDS%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20fixVersion%20%3D%202.0.0 >> > >> > Source code and binary tarball: >> > https://dist.apache.org/repos/dist/dev/ozone/2.0.0-rc1/ >> > Maven artifacts: >> > https://repository.apache.org/content/repositories/orgapacheozone-1030/ >> > PGP key: https://dist.apache.org/repos/dist/dev/ozone/KEYS >> > Fingerprint: 3ED23305D7631918 >> > >> > RC0 and RC1 diff: >> > >> https://github.com/apache/ozone/compare/ozone-2.0.0-RC0...ozone-2.0.0-RC1 >> > 7 commits: >> > >> > HDDS-12327. HDDS-12668. Fix HSync upgrade test failure in non-HA upgrade >> > test (#8171) >> > HDDS-12684. Update NOTICE and LICENSE file (#8160) >> > HDDS-12327. Restore non-HA (to HA) upgrade test (#7880) >> > HDDS-12662. Rename upgrade callback directory 1.5.0 to 2.0.0 (#8131) >> > HDDS-12668. HSync upgrade test failure (#8137) >> > HDDS-12671. Include .editorconfig and .run in source tarball (#8139) >> > HDDS-12666. Remove -SNAPSHOT from OZONE_CURRENT_VERSION in upgrade test >> > (#8136) >> > >> > Please also take a look at the release page draft: >> > https://jojochuang.github.io/release/2.0.0/ >> > Full CHANGELOGS >> > https://jojochuang.github.io/release/2.0.0/changelog.2.0.0/ >> > Full ReleaseNotes: >> > https://jojochuang.github.io/release/2.0.0/releasenotes.2.0.0/ >> > >> > changelogs and releasenotes are generated by Apache Yetus >> releasedocmaker: >> > ./releasedocmaker --project HDDS --version 2.0.0 --projecttitle "Apache >> > Ozone" --fileversions --dirversions --usetoday >> > >> > On Fri, Mar 21, 2025 at 3:42 PM Wei-Chiu Chuang <weic...@apache.org> >> > wrote: >> > >> >> Hi Ozone community, >> >> >> >> Please try out and cast your vote for the Ozone 2.0.0 release >> candidate 0. >> >> >> >> This is a huge release, containing 1691 resolved jiras, numerous >> features >> >> and stability improvements. >> >> >> >> Release process: >> >> >> https://ozone-site-v2.staged.apache.org/docs/developer-guide/project/release-guide/ >> >> Git tag: https://github.com/apache/ozone/releases/tag/ozone-2.0.0-RC0 >> >> All resolved jiras: >> >> >> https://issues.apache.org/jira/issues/?jql=project%20%3D%20HDDS%20AND%20status%20in%20(Resolved%2C%20Closed)%20AND%20fixVersion%20%3D%202.0.0 >> >> Source code and binary tarball: >> >> https://dist.apache.org/repos/dist/release/ozone/2.0.0-rc0/ >> >> The Maven artifacts are staged at: >> >> >> https://repository.apache.org/content/repositories/orgapacheozone-1029/ >> >> PGP key: https://dist.apache.org/repos/dist/dev/ozone/KEYS >> >> Fingerprint: 3ED23305D7631918 >> >> >> >> Per Apache policy, this release candidate vote will open for 7 days >> until >> >> the end of March 28th 2025. PMC members can cast binding votes while >> >> committers and community contributors are welcomed to cast non-binding >> >> votes. >> >> >> >> Best regards, >> >> Weichiu >> >> >> > >> >