Striim 4.1.0 documentation

PostgreSQL Reader properties

Striim provides templates for creating applications that read from PostgreSQL and write to various targets. See Creating an application using a template for details.

The PostgreSQL JDBC driver is included with the Striim server. When running a PostgreSQLReader source with the Forwarding Agent, the driver must be installed as described in Install the PostgreSQL JDBC driver.



default value


Bidirectional Marker Table


When performing bidirectional replication, the fully qualified name of the marker table (see Bidirectional replication). This setting is case-sensitive.

CDDL Action



See Handling schema evolution.

CDDL Capture



See Handling schema evolution.

CDDL Tracking Table


See PostgreSQL setup for schema evolution.

Connection Retry Policy


retryInterval=30, maxRetries=3

With the default setting, if a connection attempt is unsuccessful, the adapter will try again in 60 seconds (retryInterval. If the second attempt is unsuccessful, in 60 seconds it will try a third time (maxRetries). If that is unsuccessful, the adapter will fail and log an exception. Negative values are not supported.

Connection URL


jdbc:postgresql:// followed by the server's IP address or network name, a colon, the port number, and a slash followed by the database name. If the database name is omitted, the Username value is used as the database name.

Excluded Tables


Change data for any tables specified here will not be returned. For example, if Tables uses a wildcard, data from any tables specified here will be omitted. Multiple table names and wildcards may be used as for Tables.

Filter Transaction Boundaries



With the default value of True, begin and commit transactions are filtered out. Set to False to include begin and commit transactions.

JAAS Configuration


If you Enable Kerberos authentication for Oracle and PostgreSQL, use this property to configure it.

To authenticate PostgreSQL, specify<Kerberos realm>;<Kerberos server IP address or network name>;;<path>/login.conf.

For example,;;;

You must also append the appropriate application name from the specified 'login.conf (see Enable Kerberos authentication for Oracle and PostgreSQL) to the connection URL. For example, jdbc:postgresql://<ip address>:<port>/<database name>&jaasApplicationName=<application name>.


encrypted password

the password specified for the username (see Encrypted passwords)

Postgres Config


{"ReplicationPluginConfig": {"Name": "WAL2JSON", "Format": "1"}}

Change 1 to 2 if you are using wal2json version 2 (see PostgreSQL setup). Amazon uses version 2. Azure can use either version 1 or 2. Google Cloud SQL uses version 1.

Replication Slot Name



The name of the replication slot created as described in PostgreSQL setup. If you have multiple instances of PostgreSQLReader, each must have its own slot.

Start LSN


By default, only new transactions are read. Optionally, specify a log sequence number to start reading from that point.



The table(s) for which to return change data. Tables must have primary keys (required for logical replication).

Names are case-sensitive. Specify source table names as <schema>.<table>) (The database is specified in the connection URL.)

You may specify multiple tables as a list separated by semicolons or using the following wildcards in the schema and/or table names only (not in the database name):

  • %: any series of characters

  • _: any single character

For example, %.% would include all tables in all schemas in the database specified in the connection URL.

All tables specified must have primary keys. Tables without primary keys are not included in output.

If any specified tables are missing PostgresReader will issue a warning. If none of the specified tables exists, start will fail with a "found no tables" error.

If you have multiple instances of PostgreSQLReader, each should read a separate set of tables.



the login name for the user created as described in PostgreSQL setup