databases/pgbouncer 1.25.1_1 FreeBSD
Lightweight connection pooler for PostgreSQL
- System
- FreeBSD
- Repository
- FreeBSD ports
- Maintainer
- [email protected]
- License
- BSD2CLAUSE
- Categories
- databases
- Package size
- 216.9 KiB, 503.0 KiB installed
Description
PgBouncer is a PostgreSQL connection pooler. Any target application can be connected to PgBouncer as if it were a PostgreSQL server, and PgBouncer will create a connection to the actual server, or it will reuse one of its existing connections.
The aim of PgBouncer is to lower the performance impact of opening new connections to PostgreSQL.
In order not to compromise transaction semantics for connection pooling, PgBouncer supports several types of pooling when rotating connections:
* Session pooling
Most polite method. When a client connects, a server connection will be assigned to it for the whole duration it stays connected. When the client disconnects, the server connection will be put back into pool. This mode supports all PostgreSQL features.
* Transaction pooling
A server connection is assigned to a client only during a transaction. When PgBouncer notices that the transaction is over, the server will be put back into the pool.
This mode breaks a few session-based features of PostgreSQL. You can use it only when the 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 the client, mostly targeted at PL/Proxy.
In the other systems
| System | Port | Version |
|---|---|---|
| FreeBSD | databases/pgbouncer | 1.25.1_1 |
| OpenBSD | databases/pgbouncer | 1.26.1p0 |
| NetBSD | databases/pgbouncer | 1.22.1 |
| DragonFly | databases/pgbouncer | 1.23.1 |
| HardenedBSD | databases/pgbouncer | 1.25.1_1 |
| GhostBSD | databases/pgbouncer | 1.25.1_1 |
Install
Binary package:
pkg install pgbouncer
From the ports tree:
cd /usr/ports/databases/pgbouncer/ && make install clean
To depend on this port in another port's Makefile:
RUN_DEPENDS= pgbouncer>0:databases/pgbouncer
Packages
The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 1.25.1_1 | 1.25.1_1 | 1.17.0 | 1.24.1 | - |
| FreeBSD:14:quarterly | 1.25.1_1 | 1.25.1_1 | n/a | 1.23.1 | - |
| FreeBSD:15:latest | 1.25.1_1 | 1.25.1_1 | n/a | 1.24.1 | 1.24.1 |
| FreeBSD:15:quarterly | 1.25.1_1 | 1.25.1_1 | n/a | n/a | n/a |
| FreeBSD:16:latest | 1.25.1_1 | 1.25.1_1 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/a |
Dependencies
As this port's Makefile names them.
Library 1
libevent.so: devel/libevent
The full lists below include those, and their dependencies in turn.
Build dependencies 12
Run dependencies 1
No port depends on this one.
Configuration
Options name: databases_pgbouncer
| Option | Default | Description |
|---|---|---|
| CARES | off | Asynchronous DNS resolution via c-ares |
| MANPAGES | on | Build and/or install manual pages |
- USES
- cpe gmake pkgconfig python:build shebangfix ssl
- Service scripts
pgbouncer
Message after installing
Files
Manual pages 2
- pgbouncer(1)
- pgbouncer(5)
pkg-plist 7
- bin/pgbouncer
- @sample etc/pgbouncer.ini.sample
- @sample etc/pgbouncer.users.sample
- share/man/man1/pgbouncer.1.gz
- share/man/man5/pgbouncer.5.gz
- @dir(,,)
- @dir(,,)
distinfo 1
| File | Size | SHA256 |
|---|---|---|
| pgbouncer-1.25.1.tar.gz | 864801 | 6e566ae92fe3ef7f6a1b9e26d6049f7d7ca39c40e29e7b38f6d5500ae15d8465 |
Master sites 1
- https://www.pgbouncer.org/downloads/files/1.25.1/
Commit history 0
No commits in the history this site was built from.