hex
is recommended for most applications as it provides standard hexadecimal encoding. Use escape
only for legacy application compatibility.on
is recommended for development and production environments. Consider disabling temporarily during migration of functions with external dependencies.notice
is appropriate for most production environments. Set to debug
or log
for development and troubleshooting, but avoid in production to reduce overhead.heap
is suitable for most general-purpose workloads. Consider alternative access methods for specialized use cases after thorough testing.pglz
provides good compression for most use cases. Consider lz4
for faster compression/decompression if CPU overhead is a concern.off
is appropriate for most workloads. Enable only for specific sessions that run long read-only serializable transactions and experience frequent serialization failures.read committed
is suitable for most OLTP workloads. Use repeatable read
or serializable
for applications requiring stricter consistency guarantees.off
for general use. Set to on
for dedicated reporting users or applications to prevent accidental modifications.on
is recommended. Disable only if you experience issues with specific event triggers or for troubleshooting.4MB
is reasonable for most workloads. Increase for bulk loading operations on large datasets, but monitor memory usage carefully.5-10 minutes
for production systems. Adjust based on your application's transaction patterns and tolerance for idle connections.10-30 minutes
for most applications. Adjust based on your connection pool settings and application behavior.1-5 seconds
for OLTP systems. Use higher values for reporting queries or bulk operations that may legitimately need to wait for locks.on
is recommended for security. Disable only for specific maintenance operations or if performance testing shows significant overhead."$user", public
as a starting point. Avoid including too many schemas and never include untrusted schemas early in the path.origin
for normal operations. Use replica
for logical replication targets to avoid trigger execution during replication.30 seconds
for OLTP systems. Use higher values (minutes to hours) for reporting and ETL processes, but always set some limit.off
for most use cases. Enable for specific sessions running long serializable read-only transactions.on
for reporting and analytical queries. Use off
for transactions that need to modify data.5-10 minutes
for OLTP systems. Use longer timeouts for batch processing jobs, but always set a reasonable upper bound.50000000
is generally appropriate. Lower values can increase vacuum overhead but provide more aggressive wraparound protection.150000000
is reasonable for most systems. Monitor wraparound warnings and adjust if necessary.5000000
is generally appropriate. Maintain default unless specific issues arise.150000000
is reasonable for most systems. Monitor multixact age and adjust if necessary.base64
provides standard encoding. Use hex
only for specific compatibility requirements.content
is appropriate for most use cases. Use document
only when strict document validation is required.Configuring statement behavior parameters correctly is essential for application performance, security, and reliability.
With pghealth, you can:
Start optimizing your PostgreSQL configuration today with our free trial ā no installation or commitment required.