smengcl opened a new pull request, #581: URL: https://github.com/apache/ozone-site/pull/581
Generated-by: Claude Code (Opus 5.5) ## What changes were proposed in this pull request? The release guide only says to build the release on Linux, offers Rocky Linux or Ubuntu with no version pinned, and never checks that the native library loads. 2.2.1 shipped a `libozone_rocksdb_tools.so` built with GCC 14.2 that needs `GLIBCXX_3.4.32`, so it cannot load on Rocky Linux 9, including the official `apache/ozone:2.2.1` image (HDDS-17153). Ozone silently falls back to a full snapshot diff, so nobody noticed. This PR: - Extends the Linux note: the native libraries only load on systems with the same or newer glibc/libstdc++, so build on Rocky Linux 9 (the base of the `apache/ozone` image) or in a `rockylinux:9` container. Also notes the library is built only for the build machine's CPU architecture. - Labels the Rocky tab "Rocky Linux 9", adds `unzip`, and replaces the Ubuntu tab with a `rockylinux:9` container tab. - Adds step 8 to "Check the Artifacts": `bin/ozone debug checknative` must report `rocks-tools: true`, and the newest `GLIBC_`/`GLIBCXX_` versions required by `libozone_rocksdb_tools.so` must not exceed `GLIBC_2.34`/`GLIBCXX_3.4.29`. If the project prefers an older baseline than Rocky Linux 9, only the version numbers in the note and the check change. ## What is the link to the Apache Jira? https://issues.apache.org/jira/browse/HDDS-17156 ## How was this patch tested? - The `yum install` line works in a fresh `rockylinux:9` container (GCC 11.5, glibc 2.34, `GLIBCXX_3.4.29`). - The version check flags the 2.2.1 library (`GLIBC_2.32`/`GLIBCXX_3.4.32`) and passes a library rebuilt with the HDDS-17153 fix (`GLIBC_2.32`/`GLIBCXX_3.4.14`). Each prefix is checked separately because a combined `sort -V | tail` hides the `GLIBCXX_` maximum. - `bin/ozone debug checknative` reports `rocks-tools: true` on Rocky Linux 9 for a correctly built library. - `pnpm run lint` (ESLint, markdownlint), `.github/scripts/spelling.sh` and `pnpm build` pass. The rendered page shows the new note, the container tab and step 8. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
