Top Description Fields Constructors Methods
org.postgresql

public final Enum PGProperty

extends Enum<PGProperty>
Class Inheritance
Imports
org.postgresql.util.DriverInfo, .GT, .PSQLException, .PSQLState, org.checkerframework.checker.nullness.qual.Nullable, java.sql.Connection, .DriverPropertyInfo, java.util.HashMap, .Map, .Properties

All connection parameters that can be either set in JDBC URL, in Driver properties or in datasource setters.

Field Summary

Modifier and TypeField and Description
public static final PGProperty
ADAPTIVE_FETCH

Specifies if number of rows, used during fetching rows of a result set, should be computed dynamically.

public static final PGProperty
ADAPTIVE_FETCH_MAXIMUM

Specifies the highest number of rows which can be calculated by adaptiveFetch.

public static final PGProperty
ADAPTIVE_FETCH_MINIMUM

Specifies the lowest number of rows which can be calculated by adaptiveFetch.

public static final PGProperty
ALLOW_ENCODING_CHANGES

When using the V3 protocol the driver monitors changes in certain server configuration parameters that should not be touched by end users.

public static final PGProperty
APPLICATION_NAME

The application name (require server version >= 9.0).

public static final PGProperty
ASSUME_MIN_SERVER_VERSION

Assume the server is at least that version.

public static final PGProperty
AUTHENTICATION_PLUGIN_CLASS_NAME

AuthenticationPluginClass

public static final PGProperty
AUTOSAVE

Specifies what the driver should do if a query fails.

public static final PGProperty
BINARY_TRANSFER

Use binary format for sending and receiving data if possible.

public static final PGProperty
BINARY_TRANSFER_DISABLE

Comma separated list of types to disable binary transfer.

public static final PGProperty
BINARY_TRANSFER_ENABLE

Comma separated list of types to enable binary transfer.

public static final PGProperty
CANCEL_SIGNAL_TIMEOUT

Cancel command is sent out of band over its own connection, so cancel message can itself get stuck.

private final @Nullable String[]
public static final PGProperty
CLEANUP_SAVEPOINTS

Determine whether SAVEPOINTS used in AUTOSAVE will be released per query or not

public static final PGProperty
CONNECT_TIMEOUT

The timeout value used for socket connect operations.

public static final PGProperty
CURRENT_SCHEMA

Specify the schema (or several schema separated by commas) to be set in the search-path.

public static final PGProperty
DATABASE_METADATA_CACHE_FIELDS

Specifies the maximum number of fields to be cached per connection.

public static final PGProperty
DATABASE_METADATA_CACHE_FIELDS_MIB

Specifies the maximum size (in megabytes) of fields to be cached per connection.

public static final PGProperty
private final @Nullable String
private final String
public static final PGProperty
DISABLE_COLUMN_SANITISER

Enable optimization that disables column name sanitiser.

public static final PGProperty
ESCAPE_SYNTAX_CALL_MODE

Specifies how the driver transforms JDBC escape call syntax into underlying SQL, for invoking procedures or functions.

public static final PGProperty
GROUP_STARTUP_PARAMETERS

Group startup parameters in a transaction This is important in pool-by-transaction scenarios in order to make sure that all the statements reaches the same connection that is being initialized.

public static final PGProperty
public static final PGProperty
GSS_LIB

Force one of

  • SSPI (Windows transparent single-sign-on)
  • GSSAPI (Kerberos, via JSSE)
public static final PGProperty
GSS_RESPONSE_TIMEOUT

After requesting an upgrade to SSL from the server there are reports of the server not responding due to a failover without a timeout here, the client can wait forever.

public static final PGProperty
HIDE_UNPRIVILEGED_OBJECTS

Enable mode to filter out the names of database objects for which the current user has no privileges granted from appearing in the DatabaseMetaData returned by the driver.

public static final PGProperty
public static final PGProperty
JAAS_APPLICATION_NAME

Specifies the name of the JAAS system or application login configuration.

public static final PGProperty
JAAS_LOGIN

Flag to enable/disable obtaining a GSS credential via JAAS login before authenticating.

public static final PGProperty
KERBEROS_SERVER_NAME

The Kerberos service name to use when authenticating with GSSAPI.

public static final PGProperty
public static final PGProperty
LOCAL_SOCKET_ADDRESS

If this is set then the client side will bind to this address.

public static final PGProperty
LOG_SERVER_ERROR_DETAIL

Whether to include full server error detail in exception messages.

public static final PGProperty
LOG_UNCLOSED_CONNECTIONS

When connections that are not explicitly closed are garbage collected, log the stacktrace from the opening of the connection to trace the leak source.

public static final PGProperty
LOGGER_FILE

Deprecated Logging is configured via java.util.logging.
This property is no longer used by the driver and will be ignored.
public static final PGProperty
LOGGER_LEVEL

Deprecated Logging is configured via java.util.logging.
This property is no longer used by the driver and will be ignored.
public static final PGProperty
LOGIN_TIMEOUT

Specify how long to wait for establishment of a database connection.

public static final PGProperty
MAX_RESULT_BUFFER

Specifies size of buffer during fetching result set.

private final String
public static final PGProperty
OPTIONS

Specify 'options' connection initialization parameter.

public static final PGProperty
PASSWORD

Password to use when authenticating.

public static final PGProperty
PG_DBNAME

Database name to connect to (may be specified directly in the JDBC URL).

public static final PGProperty
PG_HOST

Hostname of the PostgreSQL server (may be specified directly in the JDBC URL).

public static final PGProperty
PG_PORT

Port of the PostgreSQL server (may be specified directly in the JDBC URL).

public static final PGProperty
PREFER_QUERY_MODE

Specifies which mode is used to execute queries to database: simple means ('Q' execute, no parse, no bind, text mode only), extended means always use bind/execute messages, extendedForPrepared means extended for prepared statements only, extendedCacheEverything means use extended protocol and try cache every statement (including Statement.execute(String sql)) in a query cache.

public static final PGProperty
PREPARE_THRESHOLD

Sets the default threshold for enabling server-side prepare.

public static final PGProperty
PREPARED_STATEMENT_CACHE_QUERIES

Specifies the maximum number of entries in cache of prepared statements.

public static final PGProperty
PREPARED_STATEMENT_CACHE_SIZE_MIB

Specifies the maximum size (in megabytes) of the prepared statement cache.

private static final Map<String, PGProperty>
public static final PGProperty
PROTOCOL_VERSION

Force use of a particular protocol version when connecting, if set, disables protocol version fallback.

public static final PGProperty
QUOTE_RETURNING_IDENTIFIERS

Quote returning columns.

public static final PGProperty
READ_ONLY

Puts this connection in read-only mode.

public static final PGProperty
READ_ONLY_MODE

Connection parameter to control behavior when Connection#setReadOnly(boolean) is set to true.

public static final PGProperty
RECEIVE_BUFFER_SIZE

Socket read buffer size (SO_RECVBUF).

public static final PGProperty
REPLICATION

Connection parameter passed in the startup message.

private final boolean
public static final PGProperty
REWRITE_BATCHED_INSERTS

Configure optimization to enable batch insert re-writing.

public static final PGProperty
SEND_BUFFER_SIZE

Socket write buffer size (SO_SNDBUF).

public static final PGProperty
SERVICE

Service name to use for additional parameters.

public static final PGProperty
SOCKET_FACTORY

Socket factory used to create socket.

public static final PGProperty
SOCKET_FACTORY_ARG

The String argument to give to the constructor of the Socket Factory.

public static final PGProperty
SOCKET_TIMEOUT

The timeout value used for socket read operations.

public static final PGProperty
SSL

Control use of SSL: empty or true values imply sslmode==verify-full

public static final PGProperty
SSL_CERT

File containing the SSL Certificate.

public static final PGProperty
SSL_FACTORY

Classname of the SSL Factory to use (instance of javax.net.ssl.SSLSocketFactory).

public static final PGProperty
SSL_FACTORY_ARG

Deprecated use ..Factory(Properties) constructor.
The String argument to give to the constructor of the SSL Factory.
public static final PGProperty
SSL_HOSTNAME_VERIFIER

Classname of the SSL HostnameVerifier to use (instance of javax.net.ssl.HostnameVerifier).

public static final PGProperty
SSL_KEY

File containing the SSL Key.

public static final PGProperty
SSL_MODE

Parameter governing the use of SSL.

public static final PGProperty
SSL_PASSWORD

The SSL password to use in the default CallbackHandler.

public static final PGProperty
public static final PGProperty
SSL_RESPONSE_TIMEOUT

After requesting an upgrade to SSL from the server there are reports of the server not responding due to a failover without a timeout here, the client can wait forever.

public static final PGProperty
SSL_ROOT_CERT

File containing the root certificate when validating server (sslmode = verify-ca or verify-full).

public static final PGProperty
SSPI_SERVICE_CLASS

Specifies the name of the SSPI service class that forms the service class part of the SPN.

public static final PGProperty
STRING_TYPE

Bind String to either unspecified or varchar.

public static final PGProperty
public static final PGProperty
TCP_KEEP_ALIVE

Enable or disable TCP keep-alive.

public static final PGProperty
public static final PGProperty
UNKNOWN_LENGTH

Specifies the length to return for types of unknown length.

public static final PGProperty
USE_SPNEGO

Use SPNEGO in SSPI authentication requests.

public static final PGProperty
USER

Username to connect to the database as.

public static final PGProperty
XML_FACTORY_FACTORY

Factory class to instantiate factories for XML processing.

Constructor Summary

AccessConstructor and Description
private
PGProperty(String name, @Nullable String defaultValue, String description)

private
PGProperty(String name, @Nullable String defaultValue, String description, boolean required)

private
PGProperty(String name, @Nullable String defaultValue, String description, boolean required, @Nullable String[] choices)

Method Summary

Modifier and TypeMethod and Description
public static @Nullable PGProperty
public @Nullable String

Returns:

evaluated value for this connection parameter or null
get
(Properties
properties to take actual value from
properties
)
Deprecated use getOrDefault(Properties) instead

Returns the value of the connection parameter from the given Properties or the default value

public boolean

Returns:

evaluated value for this connection parameter converted to boolean
getBoolean
(Properties
properties to take actual value from
properties
)

Return the boolean value for this connection parameter in the given Properties.

public @Nullable String[]

Returns:

the available values for this connection parameter or null
getChoices
()

Returns the available values for this connection parameter.

public @Nullable String

Returns:

the default value for this connection parameter or null
getDefaultValue
()

Returns the default value for this connection parameter.

public String

Returns:

the description for this connection parameter
getDescription
()

Returns the description for this connection parameter.

public int

Returns:

evaluated value for this connection parameter converted to int
getInt
(Properties
properties to take actual value from
properties
)

Return the int value for this connection parameter in the given Properties.

public @Nullable Integer

Returns:

evaluated value for this connection parameter converted to Integer or null
getInteger
(Properties
properties to take actual value from
properties
)

Return the Integer value for this connection parameter in the given Properties.

public int

Returns:

evaluated value for this connection parameter converted to int
getIntNoCheck
(Properties
properties to take actual value from
properties
)

Return the int value for this connection parameter in the given Properties.

public String

Returns:

the name of the connection parameter
getName
()

Returns the name of the connection parameter.

public @Nullable String

Returns:

evaluated value for this connection parameter
getOrDefault
(Properties
properties to take actual value from
properties
)

Returns the value of the connection parameter from the given Properties or the default value.

public @Nullable String

Returns:

evaluated value for this connection parameter
getOrNull
(Properties
properties object to get value from
properties
)

Returns the value of the connection parameter from the given Properties or null if there is no default value

public @Nullable String

Returns:

the value of a set property
getSetString
(Properties
properties bundle
properties
)

Return the property if exists but avoiding the default.

public boolean

Returns:

true if the parameter is specified in the given properties
isPresent
(Properties
set of properties to check current in
properties
)

Test whether this property is present in the given Properties.

public boolean

Returns:

whether this parameter is required
isRequired
()

Returns whether this parameter is required.

public void
set(Properties
properties in which the value should be set
properties
,
@Nullable String
value for this connection parameter
value
)

Set the value for this connection parameter in the given Properties.

public void
set(Properties
properties in which the value should be set
properties
,
boolean
boolean value for this connection parameter
value
)

Set the boolean value for this connection parameter in the given Properties.

public void
set(Properties
properties in which the value should be set
properties
,
int
int value for this connection parameter
value
)

Set the int value for this connection parameter in the given Properties.

public DriverPropertyInfo

Returns:

a DriverPropertyInfo representing this connection parameter
toDriverPropertyInfo
(Properties
properties to take actual value from
properties
)

Convert this connection parameter and the value read from the given Properties into a DriverPropertyInfo.

public static PGProperty
public static PGProperty[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

ADAPTIVE_FETCHback to summary
public static final PGProperty ADAPTIVE_FETCH

Specifies if number of rows, used during fetching rows of a result set, should be computed dynamically. Number of rows will be calculated by dividing maxResultBuffer size by max row size observed so far, rounded down. First fetch will have number of rows declared in defaultRowFetchSize. Number of rows can be limited by adaptiveFetchMinimum and adaptiveFetchMaximum. Requires declaring of maxResultBuffer and defaultRowFetchSize to work. Default value is false.

ADAPTIVE_FETCH_MAXIMUMback to summary
public static final PGProperty ADAPTIVE_FETCH_MAXIMUM

Specifies the highest number of rows which can be calculated by adaptiveFetch. Requires adaptiveFetch set to true to work. Default value is -1 (used as infinity).

ADAPTIVE_FETCH_MINIMUMback to summary
public static final PGProperty ADAPTIVE_FETCH_MINIMUM

Specifies the lowest number of rows which can be calculated by adaptiveFetch. Requires adaptiveFetch set to true to work. Default value is 0.

ALLOW_ENCODING_CHANGESback to summary
public static final PGProperty ALLOW_ENCODING_CHANGES

When using the V3 protocol the driver monitors changes in certain server configuration parameters that should not be touched by end users. The client_encoding setting is set by the driver and should not be altered. If the driver detects a change it will abort the connection.

APPLICATION_NAMEback to summary
public static final PGProperty APPLICATION_NAME

The application name (require server version >= 9.0).

ASSUME_MIN_SERVER_VERSIONback to summary
public static final PGProperty ASSUME_MIN_SERVER_VERSION

Assume the server is at least that version.

AUTHENTICATION_PLUGIN_CLASS_NAMEback to summary
public static final PGProperty AUTHENTICATION_PLUGIN_CLASS_NAME

AuthenticationPluginClass

AUTOSAVEback to summary
public static final PGProperty AUTOSAVE

Specifies what the driver should do if a query fails. In autosave=always mode, JDBC driver sets a savepoint before each query, and rolls back to that savepoint in case of failure. In autosave=never mode (default), no savepoint dance is made ever. In autosave=conservative mode, savepoint is set for each query, however the rollback is done only for rare cases like 'cached statement cannot change return type' or 'statement XXX is not valid' so JDBC driver rollsback and retries

BINARY_TRANSFERback to summary
public static final PGProperty BINARY_TRANSFER

Use binary format for sending and receiving data if possible.

BINARY_TRANSFER_DISABLEback to summary
public static final PGProperty BINARY_TRANSFER_DISABLE

Comma separated list of types to disable binary transfer. Either OID numbers or names. Overrides values in the driver default set and values set with binaryTransferEnable.

BINARY_TRANSFER_ENABLEback to summary
public static final PGProperty BINARY_TRANSFER_ENABLE

Comma separated list of types to enable binary transfer. Either OID numbers or names

CANCEL_SIGNAL_TIMEOUTback to summary
public static final PGProperty CANCEL_SIGNAL_TIMEOUT

Cancel command is sent out of band over its own connection, so cancel message can itself get stuck. This property controls "connect timeout" and "socket timeout" used for cancel commands. The timeout is specified in seconds. Default value is 10 seconds.

choicesback to summary
private final @Nullable String[] choices
CLEANUP_SAVEPOINTSback to summary
public static final PGProperty CLEANUP_SAVEPOINTS

Determine whether SAVEPOINTS used in AUTOSAVE will be released per query or not

CONNECT_TIMEOUTback to summary
public static final PGProperty CONNECT_TIMEOUT

The timeout value used for socket connect operations. If connecting to the server takes longer than this value, the connection is broken.

The timeout is specified in seconds and a value of zero means that it is disabled.

CURRENT_SCHEMAback to summary
public static final PGProperty CURRENT_SCHEMA

Specify the schema (or several schema separated by commas) to be set in the search-path. This schema will be used to resolve unqualified object names used in statements over this connection.

DATABASE_METADATA_CACHE_FIELDSback to summary
public static final PGProperty DATABASE_METADATA_CACHE_FIELDS

Specifies the maximum number of fields to be cached per connection. A value of 0 disables the cache.

DATABASE_METADATA_CACHE_FIELDS_MIBback to summary
public static final PGProperty DATABASE_METADATA_CACHE_FIELDS_MIB

Specifies the maximum size (in megabytes) of fields to be cached per connection. A value of 0 disables the cache.

DEFAULT_ROW_FETCH_SIZEback to summary
public static final PGProperty DEFAULT_ROW_FETCH_SIZE

Default parameter for java.sql.Statement#getFetchSize(). A value of 0 means that need fetch all rows at once

defaultValueback to summary
private final @Nullable String defaultValue
descriptionback to summary
private final String description
DISABLE_COLUMN_SANITISERback to summary
public static final PGProperty DISABLE_COLUMN_SANITISER

Enable optimization that disables column name sanitiser.

ESCAPE_SYNTAX_CALL_MODEback to summary
public static final PGProperty ESCAPE_SYNTAX_CALL_MODE

Specifies how the driver transforms JDBC escape call syntax into underlying SQL, for invoking procedures or functions. (backend >= 11) In escapeSyntaxCallMode=select mode (the default), the driver always uses a SELECT statement (allowing function invocation only). In escapeSyntaxCallMode=callIfNoReturn mode, the driver uses a CALL statement (allowing procedure invocation) if there is no return parameter specified, otherwise the driver uses a SELECT statement. In escapeSyntaxCallMode=call mode, the driver always uses a CALL statement (allowing procedure invocation only).

GROUP_STARTUP_PARAMETERSback to summary
public static final PGProperty GROUP_STARTUP_PARAMETERS

Group startup parameters in a transaction This is important in pool-by-transaction scenarios in order to make sure that all the statements reaches the same connection that is being initialized. All of the startup parameters will be wrapped in a transaction Note this is off by default as pgbouncer in statement mode

GSS_ENC_MODEback to summary
public static final PGProperty GSS_ENC_MODE
GSS_LIBback to summary
public static final PGProperty GSS_LIB

Force one of

  • SSPI (Windows transparent single-sign-on)
  • GSSAPI (Kerberos, via JSSE)
to be used when the server requests Kerberos or SSPI authentication.
GSS_RESPONSE_TIMEOUTback to summary
public static final PGProperty GSS_RESPONSE_TIMEOUT

After requesting an upgrade to SSL from the server there are reports of the server not responding due to a failover without a timeout here, the client can wait forever. The pattern for requesting a GSS encrypted connection is the same so we provide the same timeout mechanism This timeout will be set before the request and reset after

HIDE_UNPRIVILEGED_OBJECTSback to summary
public static final PGProperty HIDE_UNPRIVILEGED_OBJECTS

Enable mode to filter out the names of database objects for which the current user has no privileges granted from appearing in the DatabaseMetaData returned by the driver.

HOST_RECHECK_SECONDSback to summary
public static final PGProperty HOST_RECHECK_SECONDS
JAAS_APPLICATION_NAMEback to summary
public static final PGProperty JAAS_APPLICATION_NAME

Specifies the name of the JAAS system or application login configuration.

JAAS_LOGINback to summary
public static final PGProperty JAAS_LOGIN

Flag to enable/disable obtaining a GSS credential via JAAS login before authenticating. Useful if setting system property javax.security.auth.useSubjectCredsOnly=false or using native GSS with system property sun.security.jgss.native=true

KERBEROS_SERVER_NAMEback to summary
public static final PGProperty KERBEROS_SERVER_NAME

The Kerberos service name to use when authenticating with GSSAPI. This is equivalent to libpq's PGKRBSRVNAME environment variable.

LOAD_BALANCE_HOSTSback to summary
public static final PGProperty LOAD_BALANCE_HOSTS
LOCAL_SOCKET_ADDRESSback to summary
public static final PGProperty LOCAL_SOCKET_ADDRESS

If this is set then the client side will bind to this address. This is useful if you need to choose which interface to connect to.

LOG_SERVER_ERROR_DETAILback to summary
public static final PGProperty LOG_SERVER_ERROR_DETAIL

Whether to include full server error detail in exception messages.

LOG_UNCLOSED_CONNECTIONSback to summary
public static final PGProperty LOG_UNCLOSED_CONNECTIONS

When connections that are not explicitly closed are garbage collected, log the stacktrace from the opening of the connection to trace the leak source.

LOGGER_FILEback to summary
public static final PGProperty LOGGER_FILE

Deprecated

Logging is configured via java.util.logging.

This property is no longer used by the driver and will be ignored.

Annotations
@Deprecated
LOGGER_LEVELback to summary
public static final PGProperty LOGGER_LEVEL

Deprecated

Logging is configured via java.util.logging.

This property is no longer used by the driver and will be ignored.

Annotations
@Deprecated
LOGIN_TIMEOUTback to summary
public static final PGProperty LOGIN_TIMEOUT

Specify how long to wait for establishment of a database connection. The timeout is specified in seconds.

MAX_RESULT_BUFFERback to summary
public static final PGProperty MAX_RESULT_BUFFER

Specifies size of buffer during fetching result set. Can be specified as specified size or percent of heap memory.

nameback to summary
private final String name

Hides java.lang.Enum.name.

OPTIONSback to summary
public static final PGProperty OPTIONS

Specify 'options' connection initialization parameter. The value of this parameter may contain spaces and other special characters or their URL representation.

PASSWORDback to summary
public static final PGProperty PASSWORD

Password to use when authenticating.

PG_DBNAMEback to summary
public static final PGProperty PG_DBNAME

Database name to connect to (may be specified directly in the JDBC URL).

PG_HOSTback to summary
public static final PGProperty PG_HOST

Hostname of the PostgreSQL server (may be specified directly in the JDBC URL).

PG_PORTback to summary
public static final PGProperty PG_PORT

Port of the PostgreSQL server (may be specified directly in the JDBC URL).

PREFER_QUERY_MODEback to summary
public static final PGProperty PREFER_QUERY_MODE

Specifies which mode is used to execute queries to database: simple means ('Q' execute, no parse, no bind, text mode only), extended means always use bind/execute messages, extendedForPrepared means extended for prepared statements only, extendedCacheEverything means use extended protocol and try cache every statement (including Statement.execute(String sql)) in a query cache.

This mode is meant for debugging purposes and/or for cases when extended protocol cannot be used (e.g. logical replication protocol)

PREPARE_THRESHOLDback to summary
public static final PGProperty PREPARE_THRESHOLD

Sets the default threshold for enabling server-side prepare. A value of -1 stands for forceBinary

PREPARED_STATEMENT_CACHE_QUERIESback to summary
public static final PGProperty PREPARED_STATEMENT_CACHE_QUERIES

Specifies the maximum number of entries in cache of prepared statements. A value of 0 disables the cache.

PREPARED_STATEMENT_CACHE_SIZE_MIBback to summary
public static final PGProperty PREPARED_STATEMENT_CACHE_SIZE_MIB

Specifies the maximum size (in megabytes) of the prepared statement cache. A value of 0 disables the cache.

PROPS_BY_NAMEback to summary
private static final Map<String, PGProperty> PROPS_BY_NAME
PROTOCOL_VERSIONback to summary
public static final PGProperty PROTOCOL_VERSION

Force use of a particular protocol version when connecting, if set, disables protocol version fallback.

QUOTE_RETURNING_IDENTIFIERSback to summary
public static final PGProperty QUOTE_RETURNING_IDENTIFIERS

Quote returning columns. There are some ORM's that quote everything, including returning columns If we quote them, then we end up sending ""colname"" to the backend which will not be found

READ_ONLYback to summary
public static final PGProperty READ_ONLY

Puts this connection in read-only mode.

READ_ONLY_MODEback to summary
public static final PGProperty READ_ONLY_MODE

Connection parameter to control behavior when Connection#setReadOnly(boolean) is set to true.

RECEIVE_BUFFER_SIZEback to summary
public static final PGProperty RECEIVE_BUFFER_SIZE

Socket read buffer size (SO_RECVBUF). A value of -1, which is the default, means system default.

REPLICATIONback to summary
public static final PGProperty REPLICATION

Connection parameter passed in the startup message. This parameter accepts two values; "true" and "database". Passing "true" tells the backend to go into walsender mode, wherein a small set of replication commands can be issued instead of SQL statements. Only the simple query protocol can be used in walsender mode. Passing "database" as the value instructs walsender to connect to the database specified in the dbname parameter, which will allow the connection to be used for logical replication from that database.

Parameter should be use together with PGProperty#ASSUME_MIN_SERVER_VERSION with parameter >= 9.4 (backend >= 9.4)

requiredback to summary
private final boolean required
REWRITE_BATCHED_INSERTSback to summary
public static final PGProperty REWRITE_BATCHED_INSERTS

Configure optimization to enable batch insert re-writing.

SEND_BUFFER_SIZEback to summary
public static final PGProperty SEND_BUFFER_SIZE

Socket write buffer size (SO_SNDBUF). A value of -1, which is the default, means system default.

SERVICEback to summary
public static final PGProperty SERVICE

Service name to use for additional parameters. It specifies a service name in "pg_service .conf" that holds additional connection parameters. This allows applications to specify only a service name so connection parameters can be centrally maintained.

SOCKET_FACTORYback to summary
public static final PGProperty SOCKET_FACTORY

Socket factory used to create socket. A null value, which is the default, means system default.

SOCKET_FACTORY_ARGback to summary
public static final PGProperty SOCKET_FACTORY_ARG

The String argument to give to the constructor of the Socket Factory.

SOCKET_TIMEOUTback to summary
public static final PGProperty SOCKET_TIMEOUT

The timeout value used for socket read operations. If reading from the server takes longer than this value, the connection is closed. This can be used as both a brute force global query timeout and a method of detecting network problems. The timeout is specified in seconds and a value of zero means that it is disabled.

SSLback to summary
public static final PGProperty SSL

Control use of SSL: empty or true values imply sslmode==verify-full

SSL_CERTback to summary
public static final PGProperty SSL_CERT

File containing the SSL Certificate. Default will be the file postgresql.crt in $HOME/.postgresql (*nix) or %APPDATA%\postgresql (windows).

SSL_FACTORYback to summary
public static final PGProperty SSL_FACTORY

Classname of the SSL Factory to use (instance of javax.net.ssl.SSLSocketFactory).

SSL_FACTORY_ARGback to summary
public static final PGProperty SSL_FACTORY_ARG

Deprecated

use ..Factory(Properties) constructor.

The String argument to give to the constructor of the SSL Factory.

Annotations
@Deprecated
SSL_HOSTNAME_VERIFIERback to summary
public static final PGProperty SSL_HOSTNAME_VERIFIER

Classname of the SSL HostnameVerifier to use (instance of javax.net.ssl.HostnameVerifier).

SSL_KEYback to summary
public static final PGProperty SSL_KEY

File containing the SSL Key. Default will be the file postgresql.pk8 in $HOME/.postgresql (*nix) or %APPDATA%\postgresql (windows).

SSL_MODEback to summary
public static final PGProperty SSL_MODE

Parameter governing the use of SSL. The allowed values are disable, allow, prefer, require, verify-ca, verify-full. If ssl property is empty or set to true it implies verify-full. Default mode is "require"

SSL_PASSWORDback to summary
public static final PGProperty SSL_PASSWORD

The SSL password to use in the default CallbackHandler.

SSL_PASSWORD_CALLBACKback to summary
public static final PGProperty SSL_PASSWORD_CALLBACK

The classname instantiating javax.security.auth.callback.CallbackHandler to use.

SSL_RESPONSE_TIMEOUTback to summary
public static final PGProperty SSL_RESPONSE_TIMEOUT

After requesting an upgrade to SSL from the server there are reports of the server not responding due to a failover without a timeout here, the client can wait forever. This timeout will be set before the request and reset after

SSL_ROOT_CERTback to summary
public static final PGProperty SSL_ROOT_CERT

File containing the root certificate when validating server (sslmode = verify-ca or verify-full). Default will be the file root.crt in $HOME/.postgresql (*nix) or %APPDATA%\postgresql (windows).

SSPI_SERVICE_CLASSback to summary
public static final PGProperty SSPI_SERVICE_CLASS

Specifies the name of the SSPI service class that forms the service class part of the SPN. The default, POSTGRES, is almost always correct.

STRING_TYPEback to summary
public static final PGProperty STRING_TYPE

Bind String to either unspecified or varchar. Default is varchar for 8.0+ backends.

TARGET_SERVER_TYPEback to summary
public static final PGProperty TARGET_SERVER_TYPE
TCP_KEEP_ALIVEback to summary
public static final PGProperty TCP_KEEP_ALIVE

Enable or disable TCP keep-alive. The default is false.

TCP_NO_DELAYback to summary
public static final PGProperty TCP_NO_DELAY
UNKNOWN_LENGTHback to summary
public static final PGProperty UNKNOWN_LENGTH

Specifies the length to return for types of unknown length.

USE_SPNEGOback to summary
public static final PGProperty USE_SPNEGO

Use SPNEGO in SSPI authentication requests.

USERback to summary
public static final PGProperty USER

Username to connect to the database as.

XML_FACTORY_FACTORYback to summary
public static final PGProperty XML_FACTORY_FACTORY

Factory class to instantiate factories for XML processing. The default factory disables external entity processing. Legacy behavior with external entity processing can be enabled by specifying a value of LEGACY_INSECURE. Or specify a custom class that implements org.postgresql.xml.PGXmlFactoryFactory.

Constructor Detail

PGPropertyback to summary
private PGProperty(String name, @Nullable String defaultValue, String description)
PGPropertyback to summary
private PGProperty(String name, @Nullable String defaultValue, String description, boolean required)
PGPropertyback to summary
private PGProperty(String name, @Nullable String defaultValue, String description, boolean required, @Nullable String[] choices)

Method Detail

forNameback to summary
public static @Nullable PGProperty forName(String name)
getback to summary
public @Nullable String get(Properties properties)

Deprecated

use getOrDefault(Properties) instead

Returns the value of the connection parameter from the given Properties or the default value

Parameters
properties:Properties

properties to take actual value from

Returns:@Nullable String

evaluated value for this connection parameter or null

Annotations
@Deprecated
getBooleanback to summary
public boolean getBoolean(Properties properties)

Return the boolean value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties to take actual value from

Returns:boolean

evaluated value for this connection parameter converted to boolean

getChoicesback to summary
public @Nullable String[] getChoices()

Returns the available values for this connection parameter.

Returns:@Nullable String[]

the available values for this connection parameter or null

getDefaultValueback to summary
public @Nullable String getDefaultValue()

Returns the default value for this connection parameter.

Returns:@Nullable String

the default value for this connection parameter or null

getDescriptionback to summary
public String getDescription()

Returns the description for this connection parameter.

Returns:String

the description for this connection parameter

getIntback to summary
public int getInt(Properties properties) throws PSQLException

Return the int value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties to take actual value from

Returns:int

evaluated value for this connection parameter converted to int

Annotations
@SuppressWarnings:nullness:argument
Exceptions
PSQLException:
if it cannot be converted to int.
getIntegerback to summary
public @Nullable Integer getInteger(Properties properties) throws PSQLException

Return the Integer value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties to take actual value from

Returns:@Nullable Integer

evaluated value for this connection parameter converted to Integer or null

Exceptions
PSQLException:
if unable to parse property as integer
getIntNoCheckback to summary
public int getIntNoCheck(Properties properties)

Return the int value for this connection parameter in the given Properties. Prefer the use of getInt(Properties) anywhere you can throw an java.sql.SQLException.

Parameters
properties:Properties

properties to take actual value from

Returns:int

evaluated value for this connection parameter converted to int

Annotations
@SuppressWarnings:nullness:argument
Exceptions
NumberFormatException:
if it cannot be converted to int.
getNameback to summary
public String getName()

Returns the name of the connection parameter. The name is the key that must be used in JDBC URL or in Driver properties

Returns:String

the name of the connection parameter

getOrDefaultback to summary
public @Nullable String getOrDefault(Properties properties)

Returns the value of the connection parameter from the given Properties or the default value.

Parameters
properties:Properties

properties to take actual value from

Returns:@Nullable String

evaluated value for this connection parameter

getOrNullback to summary
public @Nullable String getOrNull(Properties properties)

Returns the value of the connection parameter from the given Properties or null if there is no default value

Parameters
properties:Properties

properties object to get value from

Returns:@Nullable String

evaluated value for this connection parameter

getSetStringback to summary
public @Nullable String getSetString(Properties properties)

Return the property if exists but avoiding the default. Allowing the caller to detect the lack of a property.

Parameters
properties:Properties

properties bundle

Returns:@Nullable String

the value of a set property

isPresentback to summary
public boolean isPresent(Properties properties)

Test whether this property is present in the given Properties.

Parameters
properties:Properties

set of properties to check current in

Returns:boolean

true if the parameter is specified in the given properties

isRequiredback to summary
public boolean isRequired()

Returns whether this parameter is required.

Returns:boolean

whether this parameter is required

setback to summary
public void set(Properties properties, @Nullable String value)

Set the value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties in which the value should be set

value:@Nullable String

value for this connection parameter

setback to summary
public void set(Properties properties, boolean value)

Set the boolean value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties in which the value should be set

value:boolean

boolean value for this connection parameter

setback to summary
public void set(Properties properties, int value)

Set the int value for this connection parameter in the given Properties.

Parameters
properties:Properties

properties in which the value should be set

value:int

int value for this connection parameter

toDriverPropertyInfoback to summary
public DriverPropertyInfo toDriverPropertyInfo(Properties properties)

Convert this connection parameter and the value read from the given Properties into a DriverPropertyInfo.

Parameters
properties:Properties

properties to take actual value from

Returns:DriverPropertyInfo

a DriverPropertyInfo representing this connection parameter

valueOfback to summary
public static PGProperty valueOf(String name)
valuesback to summary
public static PGProperty[] values()