PostgreSQL: Documentation: devel: O.8. libpq Fast-Path Interface Removed
DocumentationPostgreSQL devel (2026-09-11 15:39:05 - git commit 962e0a723a2)
Supported Versions: Current (18) / 17 / 16 / 15 / 14
Development Versions: 19 / devel
Unsupported versions: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2 / 7.1
This documentation is for an unsupported version of PostgreSQL.
You may want to view the same page for the current version, or one of the other supported versions listed above instead.

O.8. libpq Fast-Path Interface Removed #

In PostgreSQL 19 and below, libpq supported a fast-path interface to send simple function calls to the server via the PQfn function. This interface was unsafe and obsolete, and thus was removed in PostgreSQL 20. The PQfn symbol still exists so that applications continue to link, but it now always fails. One can achieve similar performance and greater functionality by setting up a prepared statement to define the function call. Then, executing the statement with binary transmission of parameters and results substitutes for a fast-path function call.