On 2021/08/17 09:58, Landry Breuil wrote:
> hi,
>
> here's an update to pgbouncer 1.16, see
> http://www.pgbouncer.org/changelog.html#pgbouncer-116x
> http://www.pgbouncer.org/changelog.html#pgbouncer-115x
> for changes since the 1.14 we're shipping.
>
> testing welcome, builds for me !
Not new, but I don't like these,
In file included from lib/usual/tls/tls_util.c:19:
lib/usual/tls/tls_compat.h:33:9: warning: 'NID_kx_ecdhe' macro redefined
[-Wmacro-redefined]
#define NID_kx_ecdhe (-90)
^
/usr/include/openssl/obj_mac.h:4419:9: note: previous definition is here
#define NID_kx_ecdhe 960
^
In file included from lib/usual/tls/tls_util.c:19:
lib/usual/tls/tls_compat.h:34:9: warning: 'NID_kx_dhe' macro redefined
[-Wmacro-redefined]
#define NID_kx_dhe (-91)
^
/usr/include/openssl/obj_mac.h:4423:9: note: previous definition is here
#define NID_kx_dhe 961
^
...how about the updated diff below?
I removed the libressl pre-2.5.1 compat bit as well, I think it's been
long enough, and trimmed/rearranged DESCR a bit
> --#include <pthread.h>
> -+#include <pthread.h>
they what?! :)
Index: Makefile
===================================================================
RCS file: /cvs/ports/databases/pgbouncer/Makefile,v
retrieving revision 1.31
diff -u -p -r1.31 Makefile
--- Makefile 10 May 2021 17:22:23 -0000 1.31
+++ Makefile 17 Aug 2021 08:25:26 -0000
@@ -2,13 +2,12 @@
COMMENT = lightweight connection pooler for PostgreSQL
-V = 1.14.0
+V = 1.16.0
DISTNAME = pgbouncer-${V}
-REVISION = 0
CATEGORIES = databases
-HOMEPAGE = http://wiki.postgresql.org/wiki/PgBouncer
+HOMEPAGE = https://www.pgbouncer.org/
MAINTAINER = Pierre-Emmanuel Andre <[email protected]>
@@ -25,7 +24,7 @@ CONFIGURE_STYLE = gnu
#Disable the detection of asciidoc since docs are already included
CONFIGURE_ENV = ASCIIDOC=' '
CONFIGURE_ARGS = --with-libevent=${LOCALBASE} --without-cares
-MAKE_FLAGS+= V=1
+MAKE_FLAGS += V=1
USE_GMAKE = Yes
Index: distinfo
===================================================================
RCS file: /cvs/ports/databases/pgbouncer/distinfo,v
retrieving revision 1.13
diff -u -p -r1.13 distinfo
--- distinfo 5 Jul 2020 11:29:36 -0000 1.13
+++ distinfo 17 Aug 2021 08:25:26 -0000
@@ -1,2 +1,2 @@
-SHA256 (pgbouncer-1.14.0.tar.gz) = oME9EBSPVX42/37TF5Ort6SeH4sJqi1GldHCj6EB/uc=
-SIZE (pgbouncer-1.14.0.tar.gz) = 578955
+SHA256 (pgbouncer-1.16.0.tar.gz) = pKORYYu4PKruKozZZTl09MG5i5WYfVyru+uAHaY0JlI=
+SIZE (pgbouncer-1.16.0.tar.gz) = 592136
Index: patches/patch-configure
===================================================================
RCS file: patches/patch-configure
diff -N patches/patch-configure
--- patches/patch-configure 5 Jul 2020 11:29:36 -0000 1.2
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-configure,v 1.2 2020/07/05 11:29:36 landry Exp $
-
-Index: configure
---- configure.orig
-+++ configure
-@@ -7359,7 +7359,7 @@ $as_echo_n "checking for the pthreads library -l$flag.
- # We try pthread_create on general principles.
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h. */
--#include <pthread.h>
-+#include <pthread.h>
- int
- main ()
- {
Index: patches/patch-lib_usual_tls_tls_c
===================================================================
RCS file: patches/patch-lib_usual_tls_tls_c
diff -N patches/patch-lib_usual_tls_tls_c
--- patches/patch-lib_usual_tls_tls_c 5 Jul 2020 11:29:36 -0000 1.3
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,14 +0,0 @@
-$OpenBSD: patch-lib_usual_tls_tls_c,v 1.3 2020/07/05 11:29:36 landry Exp $
-
-Index: lib/usual/tls/tls.c
---- lib/usual/tls/tls.c.orig
-+++ lib/usual/tls/tls.c
-@@ -362,7 +362,7 @@ tls_info_callback(const SSL *ssl, int where, int rc)
- {
- struct tls *ctx = SSL_get_app_data(ssl);
-
--#ifdef USE_LIBSSL_INTERNALS
-+#if defined(USE_LIBSSL_INTERNALS) && (!defined(LIBRESSL_VERSION_NUMBER) ||
LIBRESSL_VERSION_NUMBER < 0x2050100fL)
- if (!(ctx->state & TLS_HANDSHAKE_COMPLETE) && ssl->s3) {
- /* steal info about used DH key */
- if (ssl->s3->tmp.dh && !ctx->used_dh_bits) {
Index: patches/patch-lib_usual_tls_tls_compat_h
===================================================================
RCS file:
/cvs/ports/databases/pgbouncer/patches/patch-lib_usual_tls_tls_compat_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-lib_usual_tls_tls_compat_h
--- patches/patch-lib_usual_tls_tls_compat_h 10 May 2021 17:22:23 -0000
1.1
+++ patches/patch-lib_usual_tls_tls_compat_h 17 Aug 2021 08:25:26 -0000
@@ -5,7 +5,17 @@ Remove compat shim that breaks the build
Index: lib/usual/tls/tls_compat.h
--- lib/usual/tls/tls_compat.h.orig
+++ lib/usual/tls/tls_compat.h
-@@ -35,7 +35,6 @@
+@@ -28,14 +28,14 @@
+
+ #ifndef LIBRESSL_VERSION_NUMBER
+ #define USE_LIBSSL_INTERNALS
+-#endif
+-
+ #define NID_kx_ecdhe (-90)
+ #define NID_kx_dhe (-91)
++#define SSL_CTX_get0_param(ssl_ctx) ((ssl_ctx)->param)
++#endif
++
#define SSL_CIPHER_get_kx_nid(ciph) ( 0 )
#define X509_get_key_usage(x509) ((x509)->ex_kusage)
#define X509_get_extended_key_usage(x509) ((x509)->ex_xkusage)
Index: pkg/DESCR
===================================================================
RCS file: /cvs/ports/databases/pgbouncer/pkg/DESCR,v
retrieving revision 1.3
diff -u -p -r1.3 DESCR
--- pkg/DESCR 14 Mar 2011 09:17:26 -0000 1.3
+++ pkg/DESCR 17 Aug 2021 08:25:26 -0000
@@ -1,28 +1,11 @@
PgBouncer is a lightweight connection pooler for PostgreSQL.
-Features:
-* Several levels of brutality when rotating connections:
- + Session pooling
-Most polite method. When client connects, a server connection will
-be assigned to it for the whole duration it stays connected. When
-client disconnects, the server connection will be put back into
-pool. This mode supports all PostgreSQL features.
- + Transaction pooling
-Server connection is assigned to client only during a transaction.
-When PgBouncer notices that transaction is over, the server will be
-put back into pool. This mode breaks few session-based features of
-PostgreSQL. You can use it only when application cooperates by not
-using features that break. See the table below for incompatible
-features.
- + Statement pooling
-Most aggressive method. This is transaction pooling with a twist -
-multi-statement transactions are disallowed. This is meant to
-enforce "autocommit" mode on client, mostly targeted for PL/Proxy.
+- Low memory requirements (2 kB per connection by default)
-* Low memory requirements (2k per connection by default). This is due to
-the fact that PgBouncer does not need to see full packet at once.
-* It is not tied to one backend server, the destination databases can reside
-on different hosts.
-* Supports online reconfiguration for most of the settings.
-* Supports online restart/upgrade without dropping client connections.
-* Supports protocol V3 only, so backend version must be >= 7.4.
+- It is not tied to one backend server; the destination databases
+can reside on different hosts
+
+- Supports online reconfiguration for most settings, and online
+restart/upgrade without dropping client connections
+
+- Several levels of brutality when rotating connections