You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues-all@impala.apache.org by "ASF subversion and git services (Jira)" <ji...@apache.org> on 2023/06/21 05:22:00 UTC
[jira] [Commented] (IMPALA-12226) Impala code uses OpenSSL APIs deprecated in OpenSSL 3
[ https://issues.apache.org/jira/browse/IMPALA-12226?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17735540#comment-17735540 ]
ASF subversion and git services commented on IMPALA-12226:
----------------------------------------------------------
Commit 234d641d7bba4c2cab8e7c2b5fb72d2861bea23f in impala's branch refs/heads/master from Joe McDonnell
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=234d641d7 ]
IMPALA-11961/IMPALA-12207: Add Redhat 9 / Ubuntu 22 support
This adds support for Redhat 9 / Ubuntu 22. It updates
to a newer toolchain that has those builds, and it adds
supporting code in bootstrap_system.sh.
Redhat 9 and Ubuntu 22 use python = python3, which requires
various changes to build scripts and tests. Ubuntu 22 uses
Python 3.10, which deprecates certain ssl.PROTOCOL_TLS, so
this adapts test_client_ssl.py to that change until it
can be fully addressed in IMPALA-12219.
Various OpenSSL methods have been deprecated. As a workaround
until these can be addressed properly, this specifies
-Wno-deprecated-declarations. This can be removed once the
code is adapted to the non-deprecated APIs in IMPALA-12226.
Impala crashes with tcmalloc errors unless we update to a newer
gperftools, so this moves to gperftools 2.10. gperftools changed
the default for tcmalloc.aggressive_memory_decommit to off, so
this adapts our code to set it for backend tests. The gperftools
upgrade does not show any performance regression:
+----------+-----------------------+---------+------------+------------+----------------+
| Workload | File Format | Avg (s) | Delta(Avg) | GeoMean(s) | Delta(GeoMean) |
+----------+-----------------------+---------+------------+------------+----------------+
| TPCH(42) | parquet / none / none | 3.08 | -0.64% | 2.20 | -0.37% |
+----------+-----------------------+---------+------------+------------+----------------+
With newer Python versions, the impala-virtualenv command
fails to create a Python 3 virtualenv. This switches to
using Python 3's builtin venv command for Python >=3.6.
Kudu needed a newer version and LLVM required a couple patches.
Testing:
- Ran a core job on Ubuntu 22 and Redhat 9. The tests run
to completion without crashing. There are test failures
that will be addressed in follow-up JIRAs.
- Ran dockerised tests on Ubuntu 22.
- Ran dockerised tests on Ubuntu 20 and Rocky 8.5.
Change-Id: If1fcdb2f8c635ecd6dc7a8a1db81f5f389c78b86
Reviewed-on: http://gerrit.cloudera.org:8080/20073
Reviewed-by: Michael Smith <mi...@cloudera.com>
Tested-by: Joe McDonnell <jo...@cloudera.com>
> Impala code uses OpenSSL APIs deprecated in OpenSSL 3
> -----------------------------------------------------
>
> Key: IMPALA-12226
> URL: https://issues.apache.org/jira/browse/IMPALA-12226
> Project: IMPALA
> Issue Type: Bug
> Components: Backend
> Affects Versions: Impala 4.3.0
> Reporter: Joe McDonnell
> Priority: Major
> Attachments: build_output_with_warnings.txt
>
>
> Various pieces of code hit warnings about deprecated declarations with OpenSSL3:
>
> {noformat}
> /home/joe/impala/be/src/kudu/util/openssl_util.cc: In function ‘std::string kudu::security::GetOpenSSLErrors()’:
> /home/joe/impala/be/src/kudu/util/openssl_util.cc:307:66: warning: ‘long unsigned int ERR_get_error_line_data(const char**, int*, const char**, int*)’ is deprecated: Since OpenSSL 3.0 [-Wdeprecated-declarations]
> 307 | while ((l = ERR_get_error_line_data(&file, &line, &data, &flags)) != 0) {
> | ^
> In file included from /home/joe/impala/be/src/kudu/util/openssl_util.h:21,
> from /home/joe/impala/be/src/kudu/util/openssl_util.cc:18:
> /usr/include/openssl/err.h:425:15: note: declared here
> 425 | unsigned long ERR_get_error_line_data(const char **file, int *line,
> | ^~~~~~~~~~~~~~~~~~~~~~~{noformat}
> This happens in several different files across the codebase. As a workaround, we specify -Wno-deprecated-declarations until these can be fixed.
> To find all locations, edit be/CMakeLists.txt to disable -Werror and remove -Wno-deprecated-declarations.
> Some of the locations come from jwt-cpp and can be addressed by upgrading jwt-cpp to 0.6.0.
>
>
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscribe@impala.apache.org
For additional commands, e-mail: issues-all-help@impala.apache.org