Provides the information required to build the PostgreSQL RM switch module.
Restriction: This topic applies only when the Enterprise Server feature is enabled.
The PostgreSQL module provides two-phase commit support using PostgreSQL-provided SQL calls, and ensures that any database
connections made using this switch module all participate in a single XA transaction.
PostgreSQL Server configuration for XA
Important: Before you can use the PostgreSQL RM Switch Module, you must configure the PostgreSQL Server by changing the value of the
max_prepared_transactions property from its default value of 0 (zero) to a value greater than 0. After making this change,
you must restart the server before proceeding. For additional details about the max_prepared_transactions configuration property,
see your PostgreSQL documentation.
- Source Code
- The PostgreSQL RM switch module COBOL source file,
ESPGSQLXA.CBL is located by default in the
%ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\enterpriseserver\xa directory.
Note: If you prefer to supply user credentials programmatically rather than in the xa_open string, instructions for doing so are
provided in the COBOL source file in the
Customization section.
- Build Requirements
- To build the PostgreSQL RM switch module, you must have the Windows Software Development Kit (SDK) installed for your version
of Windows.
Before building this switch module, ensure that your LIB environment variable contains the path to the
odbc32.lib file, located in a subdirectory under your Windows SDK LIB directory.
- Building the Switch Module
-
- Method 1
-
- Start a
Visual COBOL command prompt, 32-bit or 64-bit depending on the application, running as an administrator.
- Change to the
%ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\enterpriseserver\xa directory (default location).
- Enter
build pg
- Method 2
-
- Start a
Visual COBOL command prompt, 32-bit or 64-bit depending on the application.
- Copy all files from the
%ProgramFiles(x86)%\Micro Focus\Visual COBOL\src\enterpriseserver\xa directory (default location) to any location where you have WRITE permission.
- Change to the directory containing the copied files.
- Enter
build pg
- Build Output
- The build process produces two binary switch module files from the
ESPGSQLXA.CBL COBOL source file:
Binary File
|
Type
|
ESPGSQLXA_S.DLL
|
static
|
ESPGSQLXA.DLL
|
dynamic
|
You can register an RM switch module with
Enterprise Server dynamically, or register it statically depending on which binary file you use.
Micro Focus recommends that you use the dynamic switch module option, as this ensures that only active databases used in the global transaction
participate in the TM/RM XA flow.
- Additional Resources
- For more information on using the PostgreSQL RM switch module, including the xa_open string definition, see
PostgreSQL xa_open string.