-
Notifications
You must be signed in to change notification settings - Fork 189
Open
Labels
priority: MediumThis issue may be useful, and needs some attention.This issue may be useful, and needs some attention.type: BugSomething isn't workingSomething isn't working
Description
Apache Cloudberry version
main
What happened
Some errors returned. Please see the details as follows. With the help of AI, I successfully installed Cloudberry on Rocky Linux 10. But I don't know if they're the right way to fix these issues. Please help correct me. Thanks!
What you think should happen instead
No response
How to reproduce
Test Env
OS:
[gpadmin@cdw cloudberry]$ cat /etc/os-release
NAME="Rocky Linux"
VERSION="10.0 (Red Quartz)"
ID="rocky"
ID_LIKE="rhel centos fedora"
VERSION_ID="10.0"
PLATFORM_ID="platform:el10"
PRETTY_NAME="Rocky Linux 10.0 (Red Quartz)"
ANSI_COLOR="0;32"
LOGO="fedora-logo-icon"
CPE_NAME="cpe:/o:rocky:rocky:10::baseos"
HOME_URL="https://rockylinux.org/"
VENDOR_NAME="RESF"
VENDOR_URL="https://resf.org/"
BUG_REPORT_URL="https://bugs.rockylinux.org/"
SUPPORT_END="2035-05-31"
ROCKY_SUPPORT_PRODUCT="Rocky-Linux-10"
ROCKY_SUPPORT_PRODUCT_VERSION="10.0"
REDHAT_SUPPORT_PRODUCT="Rocky Linux"
REDHAT_SUPPORT_PRODUCT_VERSION="10.0"
gcc/g++:
[gpadmin@cdw cloudberry]$ gcc --version
gcc (GCC) 14.2.1 20250110 (Red Hat 14.2.1-7)
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
[gpadmin@cdw cloudberry]$ g++ --version
g++ (GCC) 14.2.1 20250110 (Red Hat 14.2.1-7)
Copyright (C) 2024 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
List of issues:
make -C foreign all
make[3]: Entering directory '/home/gpadmin/cloudberry/src/backend/foreign'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/gpadmin/cloudberry/src/backend/foreign'
make -C lib all
make[3]: Entering directory '/home/gpadmin/cloudberry/src/backend/lib'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/home/gpadmin/cloudberry/src/backend/lib'
make -C libpq all
make[3]: Entering directory '/home/gpadmin/cloudberry/src/backend/libpq'
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-but-set-variable -Werror=implicit-fallthrough=3 -Wno-format-truncation -Wno-stringop-truncation -g -O3 -fPIC -DUSE_INTERNAL_FTS=1 -Werror=uninitialized -Werror=implicit-function-declaration -Werror -I../../../src/include -D_GNU_SOURCE -I/usr/include/libxml2 -DWITH_GZFILEOP -I/usr/local/xerces-c/include -I../../../src/interfaces/libpq -I../../../src/port -c -o fe-secure-openssl.o fe-secure-openssl.c
fe-secure-openssl.c: In function ‘initialize_SSL’:
fe-secure-openssl.c:800:21: error: unused variable ‘pkey’ [-Werror=unused-variable]
800 | EVP_PKEY *pkey = NULL;
| ^~~~
cc1: all warnings being treated as errors
make[3]: *** [<builtin>: fe-secure-openssl.o] Error 1
make[3]: Leaving directory '/home/gpadmin/cloudberry/src/backend/libpq'
make[2]: *** [common.mk:39: libpq-recursive] Error 2
make[2]: Leaving directory '/home/gpadmin/cloudberry/src/backend'
make[1]: *** [Makefile:45: all-backend-recurse] Error 2
make[1]: Leaving directory '/home/gpadmin/cloudberry/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
~>
diff --git a/src/interfaces/libpq/fe-secure-openssl.c b/src/interfaces/libpq/fe-secure-openssl.c
index 5c6b317caa7..eac8b65fb37 100644
--- a/src/interfaces/libpq/fe-secure-openssl.c
+++ b/src/interfaces/libpq/fe-secure-openssl.c
@@ -797,8 +797,9 @@ initialize_SSL(PGconn *conn)
bool have_homedir;
bool have_cert;
bool have_rootcert;
+#ifdef USE_SSL_ENGINE
EVP_PKEY *pkey = NULL;
-
+#endif
/*
* We'll need the home directory if any of the relevant parameters are
* defaulted. If pqGetHomeDirectory fails, act as though none of the
gcc -Wall -Wmissing-prototypes -Wpointer-arith -Werror=vla -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -Wno-unused-but-set-variable -Werror=implicit-fallthrough=3 -Wno-format-truncation -Wno-stringop-truncation -g -O3 -fPIC -DUSE_INTERNAL_FTS=1 -Werror=uninitialized -Werror=implicit-function-declaration -Werror -I. -I. -I../../../../src/interfaces/libpq -I../../../../src/include -D_GNU_SOURCE -I/usr/include/libxml2 -DWITH_GZFILEOP -I/usr/local/xerces-c/include -c -o xml.o xml.c
xml.c: In function ‘pg_xml_init’:
xml.c:1025:52: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types]
1025 | xmlSetStructuredErrorFunc((void *) errcxt, xml_errorHandler);
| ^~~~~~~~~~~~~~~~
| |
| void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
In file included from /usr/include/libxml2/libxml/valid.h:15,
from /usr/include/libxml2/libxml/parser.h:19,
from xml.c:50:
/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
898 | xmlStructuredErrorFunc handler);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
xml.c: In function ‘XmlTableFetchRow’:
xml.c:4562:62: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types]
4562 | xmlSetStructuredErrorFunc((void *) xtCxt->xmlerrcxt, xml_errorHandler);
| ^~~~~~~~~~~~~~~~
| |
| void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
898 | xmlStructuredErrorFunc handler);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
xml.c: In function ‘XmlTableGetValue’:
xml.c:4616:62: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types]
4616 | xmlSetStructuredErrorFunc((void *) xtCxt->xmlerrcxt, xml_errorHandler);
| ^~~~~~~~~~~~~~~~
| |
| void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
898 | xmlStructuredErrorFunc handler);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
xml.c: In function ‘XmlTableDestroyOpaque’:
xml.c:4759:62: error: passing argument 2 of ‘xmlSetStructuredErrorFunc’ from incompatible pointer type [-Wincompatible-pointer-types]
4759 | xmlSetStructuredErrorFunc((void *) xtCxt->xmlerrcxt, xml_errorHandler);
| ^~~~~~~~~~~~~~~~
| |
| void (*)(void *, xmlError *) {aka void (*)(void *, struct _xmlError *)}
/usr/include/libxml2/libxml/xmlerror.h:898:57: note: expected ‘xmlStructuredErrorFunc’ {aka ‘void (*)(void *, const struct _xmlError *)’} but argument is of type ‘void (*)(void *, xmlError *)’ {aka ‘void (*)(void *, struct _xmlError *)’}
898 | xmlStructuredErrorFunc handler);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
make[4]: *** [<builtin>: xml.o] Error 1
make[4]: Leaving directory '/home/gpadmin/cloudberry/src/backend/utils/adt'
make[3]: *** [../../../src/backend/common.mk:39: adt-recursive] Error 2
make[3]: Leaving directory '/home/gpadmin/cloudberry/src/backend/utils'
make[2]: *** [common.mk:39: utils-recursive] Error 2
make[2]: Leaving directory '/home/gpadmin/cloudberry/src/backend'
make[1]: *** [Makefile:45: all-backend-recurse] Error 2
make[1]: Leaving directory '/home/gpadmin/cloudberry/src'
make: *** [GNUmakefile:11: all-src-recurse] Error 2
~>
diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c
index 6d38a2d0de2..d96695e0dd9 100644
--- a/src/backend/utils/adt/xml.c
+++ b/src/backend/utils/adt/xml.c
@@ -121,7 +121,7 @@ struct PgXmlErrorContext
static xmlParserInputPtr xmlPgEntityLoader(const char *URL, const char *ID,
xmlParserCtxtPtr ctxt);
-static void xml_errorHandler(void *data, xmlErrorPtr error);
+static void xml_errorHandler(void *data, const xmlError *error);
static void xml_ereport_by_code(int level, int sqlcode,
const char *msg, int errcode);
static void chopStringInfoNewlines(StringInfo str);
@@ -1762,7 +1762,7 @@ xml_ereport(PgXmlErrorContext *errcxt, int level, int sqlcode, const char *msg)
* Error handler for libxml errors and warnings
*/
static void
-xml_errorHandler(void *data, xmlErrorPtr error)
+xml_errorHandler(void *data, const xmlError *error)
{
PgXmlErrorContext *xmlerrcxt = (PgXmlErrorContext *) data;
xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) error->ctxt;
/home/gpadmin/cloudberry/contrib/pax_storage/src/cpp/comm/comm_test.cc: In member function ‘virtual void pax::tests::CommTest_TestNewOperator_Test::TestBody()’:
/home/gpadmin/cloudberry/contrib/pax_storage/src/cpp/comm/comm_test.cc:62:24: error: allocation of insufficient size ‘0’ for type ‘bool’ with size ‘1’ [-Werror=alloc-size]
62 | auto obj = new bool[0];
| ^
[ 96%] Building CXX object src/cpp/CMakeFiles/test_main.dir/storage/columns/pax_delta_encoding_test.cc.o
cc1plus: all warnings being treated as errors
make[4]: *** [src/cpp/CMakeFiles/test_main.dir/build.make:1448: src/cpp/CMakeFiles/test_main.dir/comm/comm_test.cc.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [CMakeFiles/Makefile2:339: src/cpp/CMakeFiles/test_main.dir/all] Error 2
make[2]: *** [Makefile:136: all] Error 2
make[2]: Leaving directory '/home/gpadmin/cloudberry/contrib/pax_storage/build'
make[1]: *** [Makefile:69: build] Error 2
make[1]: Leaving directory '/home/gpadmin/cloudberry/contrib/pax_storage'
make: *** [GNUmakefile:32: all] Error 2
make: Leaving directory '/home/gpadmin/cloudberry'
~>
diff --git a/contrib/pax_storage/src/cpp/comm/comm_test.cc b/contrib/pax_storage/src/cpp/comm/comm_test.cc
index 7839e9e1f8d..38bf4bd1510 100644
--- a/contrib/pax_storage/src/cpp/comm/comm_test.cc
+++ b/contrib/pax_storage/src/cpp/comm/comm_test.cc
@@ -59,7 +59,10 @@ TEST_F(CommTest, TestDeleteOperator) {
TEST_F(CommTest, TestNewOperator) {
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Walloc-size"
auto obj = new bool[0];
+#pragma GCC diagnostic pop
ASSERT_NE(obj, nullptr);
delete[] obj;
- make install
# Install wheel and cython for PyYAML building
pip3 install --user wheel "cython<3.0.0"
Collecting wheel
Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)
Collecting cython<3.0.0
Downloading Cython-0.29.37-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl.metadata (3.1 kB)
Downloading wheel-0.45.1-py3-none-any.whl (72 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.5/72.5 kB 977.0 kB/s eta 0:00:00
Downloading Cython-0.29.37-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl (2.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.0/2.0 MB 10.8 MB/s eta 0:00:00
Installing collected packages: wheel, cython
Successfully installed cython-0.29.37 wheel-0.45.1
--- pyyaml
--- psutil
--- PyGreSQL
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/ && /usr/bin/tar xzf PyYAML-5.4.1.tar.gz
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/ && /usr/bin/tar xzf psutil-5.7.0.tar.gz
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/ && /usr/bin/tar xzf PyGreSQL-5.2.tar.gz
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/PyGreSQL-5.2/ && PATH=/usr/local/cloudberry-db/bin:$PATH LDFLAGS='-L../../src/port -L../../src/common -L/usr/local/cloudberry-db/lib -Wl,--as-needed -Wl,-rpath,'/usr/local/cloudberry-db/lib',--enable-new-dtags -Werror ' python3 setup.py build
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/psutil-5.7.0/ && env -u CC python3 setup.py build
cd /home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/PyYAML-5.4.1/ && env -u CC CFLAGS="-w" python3 setup.py build
Traceback (most recent call last):
File "/home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/PyGreSQL-5.2/setup.py", line 47, in <module>
from setuptools import setup
ModuleNotFoundError: No module named 'setuptools'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/PyGreSQL-5.2/setup.py", line 49, in <module>
from distutils.core import setup
ModuleNotFoundError: No module named 'distutils'
make[2]: *** [Makefile:124: pygresql] Error 1
make[2]: *** Waiting for unfinished jobs....
Traceback (most recent call last):
File "/home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/PyYAML-5.4.1/setup.py", line 70, in <module>
from distutils import log
ModuleNotFoundError: No module named 'distutils'
make[2]: *** [Makefile:147: pyyaml] Error 1
Traceback (most recent call last):
File "/home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/psutil-5.7.0/setup.py", line 24, in <module>
import setuptools
ModuleNotFoundError: No module named 'setuptools'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/gpadmin/cloudberry/gpMgmt/bin/pythonSrc/ext/psutil-5.7.0/setup.py", line 28, in <module>
from distutils.core import setup, Extension
ModuleNotFoundError: No module named 'distutils'
make[2]: *** [Makefile:134: psutil] Error 1
make[2]: Leaving directory '/home/gpadmin/cloudberry/gpMgmt/bin'
make[1]: *** [Makefile:7: install-bin-recurse] Error 2
make[1]: Leaving directory '/home/gpadmin/cloudberry/gpMgmt'
make: *** [GNUmakefile:80: install] Error 2
make: Leaving directory '/home/gpadmin/cloudberry'
~>
sudo dnf install python3-setuptools
sudo dnf install --enablerepo=crb python3-wheel
When running
source /usr/local/cloudberry-db/cloudberry-env.sh
make create-demo-cluster -C ~/cloudberry
Then:
performing post-bootstrap initialization ... LOG: gp_role forced to 'utility' in single-user mode
initdb: error: error while reading cdb_init.d directory: Function not implemented
initdb: removing data directory "/home/gpadmin/cloudberry/gpAux/gpdemo/datadirs/qddir/demoDataDir-1"
-- 5.43 ROLE_ROUTINE_GRANTS view is based on 5.50 ROUTINE_PRIVILEGES and is defined there instead.
-- 5.44 ROLE_TABLE_GRANTS view is based on 5.63 TABLE_PRIVILEGES and is defined there instead.
/*
* 5.45
* ROLE_TABLE_METHOD_GRANTS view
*/
-- feature not supported
-- 5.46 ROLE_USAGE_GRANTS view is based on 5.75 USAGE_PRIVILEGES and is defined there instead.
-- 5.47 ROLE_UDT_GRANTS view is based on 5.74 UDT_PRIVILEGES and is defined there instead.
~>
diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c
index 4ed9869a2c9..342be9baf35 100644
--- a/src/bin/initdb/initdb.c
+++ b/src/bin/initdb/initdb.c
@@ -2023,6 +2023,7 @@ setup_cdb_schema(FILE *cmdfd)
/* Collect all files with .sql suffix in array. */
nscripts = 0;
+ errno = 0;
while ((file = readdir(dir)) != NULL)
{
int namelen = strlen(file->d_name);
Operating System
Rocky Linux 10
Anything else
No response
Are you willing to submit PR?
- Yes, I am willing to submit a PR!
Code of Conduct
- I agree to follow this project's Code of Conduct.
Metadata
Metadata
Assignees
Labels
priority: MediumThis issue may be useful, and needs some attention.This issue may be useful, and needs some attention.type: BugSomething isn't workingSomething isn't working