Re: pg_citus extension error

From: ft <ml_at_ft-c.de>
Date: Fri, 16 Jun 2023 07:32:29 UTC
On Fri, 2023-06-16 at 07:21 +0100, Matthew Seaman wrote:
> On 16/06/2023 05:45, ft wrote:
> > A postgresql database v14 is running in a jail.
> > I installed pg_citus with portupgrade: no error messages
> > 
> > I get an error,
> > (1). when I create extension citus; or
> > (2). when I change shared_preload_libraries and restart the
> > database
> > 
> > (1)
> > errormessage:
> > SQL Error [58P01]: ERROR: could not load library
> > "/usr/local/lib/postgresql/citus.so": /usr/local/lib/libcurl.so.4:
> > Undefined symbol
> > "nghttp2_option_set_no_rfc9113_leading_and_trailing_ws_validation"
> > 
> 
> Thank you very much for the report.  The symbol you mention only
> appears 
> in the curl sources -- there's no reference from pg_citus.  So I feel
> this may be more a problem in curl than to do with pg_citus.
> 
> Can I as what version of curl you have installed, and what options
> you 
> used to build that port?
> 
Hello

your first question: version of curl

pkg info curl
curl-8.1.1
Name           : curl
Version        : 8.1.1
Installed on   : Mon Jun 12 10:28:00 2023 CEST
Origin         : ftp/curl
Architecture   : FreeBSD:13:amd64
Prefix         : /usr/local
Categories     : www net ftp
Maintainer     : sunpoet@FreeBSD.org
WWW            : https://curl.se/
Options        :
        ALTSVC         : on
        BROTLI         : off
        CARES          : off
        CA_BUNDLE      : on
        COOKIES        : on
        CURL_DEBUG     : off
        DEBUG          : off
        DICT           : on
        DOCS           : on
        EXAMPLES       : on
        FTP            : on
        GNUTLS         : off
        GOPHER         : on
        GSSAPI_BASE    : on
        GSSAPI_HEIMDAL : off
        GSSAPI_MIT     : off
        GSSAPI_NONE    : off
        HTTP           : on
        HTTP2          : on
        IDN            : off
        IMAP           : on
        IPV6           : on
        LDAP           : off
        LDAPS          : off
        LIBSSH2        : on
        MQTT           : off
        NTLM           : on
        OPENSSL        : on
        POP3           : on
        PROXY          : on
        PSL            : on
        RTMP           : off
        RTSP           : on
        SMB            : off
        SMTP           : on
        STATIC         : on
        TELNET         : on
        TFTP           : on
        THREADED_RESOLVER: on
        TLS_SRP        : on
        WOLFSSL        : off
        ZSTD           : off
Shared Libs required:
        libssh2.so.1
        libpsl.so.5
        libnghttp2.so.14
Shared Libs provided:
        libcurl.so.4
Annotations    :
        FreeBSD_version: 1301000
        cpe            : cpe:2.3:a:haxx:curl:8.1.1:::::freebsd13:x64


the second question: ldd ...

[ft@jail_pg01 ~]$  ldd /usr/local/lib/libcurl.so.4.*
/usr/local/lib/libcurl.so.4.8.0:
  libnghttp2.so.14 => /usr/local/lib/libnghttp2.so.14 (0x80153d000)
  libssh2.so.1 => /usr/local/lib/libssh2.so.1 (0x80156f000)
  libpsl.so.5 => /usr/local/lib/libpsl.so.5 (0x8015ae000)
  libssl.so.111 => /usr/lib/libssl.so.111 (0x801e00000)
  libheimntlm.so.11 => /usr/lib/libheimntlm.so.11 (0x8015c2000)
  libhx509.so.11 => /usr/lib/libhx509.so.11 (0x801e98000)
  libcom_err.so.5 => /usr/lib/libcom_err.so.5 (0x8015cc000)
  libcrypto.so.111 => /lib/libcrypto.so.111 (0x801ee9000)
  libasn1.so.11 => /usr/lib/libasn1.so.11 (0x8021dc000)
  libwind.so.11 => /usr/lib/libwind.so.11 (0x8015d1000)
  libheimbase.so.11 => /usr/lib/libheimbase.so.11 (0x80227f000)
  libroken.so.11 => /usr/lib/libroken.so.11 (0x802286000)
  libcrypt.so.5 => /lib/libcrypt.so.5 (0x80229b000)
  libz.so.6 => /lib/libz.so.6 (0x8022bc000)
  libkrb5.so.11 => /usr/lib/libkrb5.so.11 (0x8022d9000)
  libgssapi.so.10 => /usr/lib/libgssapi.so.10 (0x80235b000)
  libgssapi_krb5.so.10 => /usr/lib/libgssapi_krb5.so.10 (0x802367000)
  libthr.so.3 => /lib/libthr.so.3 (0x802389000)
  libc.so.7 => /lib/libc.so.7 (0x801083000)
  libintl.so.8 => /usr/local/lib/libintl.so.8 (0x8023b7000)
  libunistring.so.2 => /usr/local/lib/libunistring.so.2 (0x8023c5000)
  libidn2.so.0 => /usr/local/lib/libidn2.so.0 (0x8025c1000)
  libprivateheimipcc.so.11 => /usr/lib/libprivateheimipcc.so.11
(0x8025f5000)