Informix Error -84502: XA transactions are not supported on read-only secondary servers An XA transaction was run on a read-only secondary server.
Cause and resolution
XA transactions are not supported on read-only secondary servers An XA transaction was run on a read-only secondary server.
ACTION Modify your application to prevent the xa start() function from running on a read-only secondary server. Or, make the secondary server updatable using the UPDATABLE_SECONDARY configuration parameter.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-84502 fires when an XA transaction is run on a read-only secondary server — per the official guidance.
xa_start()invoked on a read-only secondary server, per the official guidance — the direct, only cause.
Solutions / Resolution
- Modify the application to prevent
xa_start()from running on a read-only secondary server, per the official guidance. - Or make the secondary server updatable using the
UPDATABLE_SECONDARYconfiguration parameter, per the official guidance.
Examples
N/A
No specific triggering statement is documented beyond an XA transaction attempted on a read-only secondary.
Diagnostic Checks
- Check whether the target server is a read-only secondary, and either redirect
xa_start()elsewhere or enableUPDATABLE_SECONDARYif updates should be allowed there.
Related Errors / Related Topics
- -84501 — "Connection between secondary and primary has been lost" A related secondary-server error, on lost connectivity rather than an XA-transaction restriction.
An XA transaction was run on a read-only secondary server — avoid xa_start() there, or
enable UPDATABLE_SECONDARY.