Enduro/X 3.5.9 Released

Enduro/X Compliance release
Added by Madars Vitolins 5 months ago

- #160 Feature Closed High Add feature to XA subsystem so that if tpbegin() fails, then do tpclose/tpopen/tpbegin again

In short, in some customer environments setups, the aggressive firewalls might drop the connection which have been established to database via tpopen(internally xa_open). In those cases if Transaction Manager Server (tmsrv) have been long standing with out activity, the connection might be dropped. Then next incoming request for new transaction might fail with different errors. Thus to address this issue new "NDRX_XA_FLAGS" environment variable have been added. It is tag-value based parameter. Currently new tag "RECON" have been added.

Excerpt from manpage

           Special for XA sub-system. It is semicolon separated tags with values. currently tag RECON is defined.  RECON tag defines the
           number of attempts of xa_close()/xa_open() and doing xa_start() again in case if original xa_start() failed (the ATMI call
           tpbegin()) - for example firewall have been closed the connection. The format for the tag is: RECON:<comma separated list of
           error codes e.g. 4,-8,* - any err>:<number of attempts>:<sleep between attempts milli-sec> example: RECON:*:3:100, meaning
           reconnect on any xa_start error, do the 3x attempts, sleep 100 milliseconds between attempts.

The parameter shall be set in environment file, or Common-Configuration [@global] section.