You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by al...@apache.org on 2026/03/20 01:25:11 UTC
(kudu) 02/02: [client] make zlib's compress symbols local in libkudu_client
This is an automated email from the ASF dual-hosted git repository.
alexey pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kudu.git
commit 3a5468b651ad64ac6e09f94bae9fffde09c4211d
Author: Alexey Serbin <al...@apache.org>
AuthorDate: Wed Mar 18 17:04:59 2026 -0700
[client] make zlib's compress symbols local in libkudu_client
Before this patch, The client_symbol-test on RHEL9.6 x86_84 was failing
because of the compress zlib's symbols not being local:
Found bad symbol 'compress'
Found bad symbol 'compress2'
Found bad symbol 'compressBound'
That's only with the very recent src from the master branch: 1.18.0,
1.18.1 and 1.18.x versions do not have such an issue. Also, this isn't
an issue at least on RHEL8.8 and Ubuntu 24.04 LTS with the same sources.
I didn't do RCA to understand what's the underlying reason, but [1]
looks like one of the usual suspects because of the changes to the
linker type in use. The other contributing factor might be the fact
that the system libz is also linked in as a dynamic library (that's been
so for quite some time, it seems). Why to link system libz when we do
have our own in 3rd-party? It's a good question: unless I'm missing
something, it should be addressed in a separate changelist. We either
need to fix linker search paths for zlib or switch to the OS-provided
zlib (perhaps, the former). This patch is to address the inconsistency
in the set of available symbols in the kudu_client library and fix
the recently discovered client_symbol-test's failure.
[1] https://github.com/apache/kudu/commit/1d789a87a
Change-Id: I78f1c38772050c6fd588141dc6aa499708b87fc5
Reviewed-on: http://gerrit.cloudera.org:8080/24116
Tested-by: Alexey Serbin <al...@apache.org>
Reviewed-by: Abhishek Chennaka <ac...@cloudera.com>
---
src/kudu/client/symbols.map | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/kudu/client/symbols.map b/src/kudu/client/symbols.map
index d10dcbf56..bd4503668 100644
--- a/src/kudu/client/symbols.map
+++ b/src/kudu/client/symbols.map
@@ -12,6 +12,7 @@
# zlib
adler32*;
crc32*;
+ compress*;
deflate*;
get_crc_table;
inflate*;