blob: ea8ef64f30fe1bb4ede87e90273184ca45d7a31f [file] [log] [blame]
type=page
status=published
title=recover-transactions
next=redeploy.html
prev=ping-node-ssh.html
~~~~~~
= recover-transactions
[[recover-transactions-1]][[GSRFM00216]][[recover-transactions]]
== recover-transactions
Manually recovers pending transactions
[[sthref1952]]
=== Synopsis
[source]
----
asadmin [asadmin-options] recover-transactions [--help]
[--transactionlogdir transaction_log_dir]
[--target target_server_name] server_name
----
[[sthref1953]]
=== Description
The `recover-transactions` subcommand manually recovers pending
transactions.
For an installation of multiple server instances, you can run the
`recover-transactions` subcommand from a surviving server instance to
recover transactions after a server failure. To use this subcommand in
this way, the following conditions must be met:
* Delegated transaction recovery is disabled.
* Transaction logs are stored on a shared file system or in a database
that is accessible to all server instances.
For a stand-alone server, do not use this subcommand to recover
transactions after a server failure. For a stand-alone server, the
`recover-transactions` subcommand can recover transactions only when a
resource fails, but the server is still running. If a stand-alone server
fails, only the full startup recovery process can recover transactions
that were pending when the server failed.
This subcommand is supported in remote mode only.
[[sthref1954]]
=== Options
asadmin-options::
Options for the `asadmin` utility. For information about these
options, see the link:asadmin.html#asadmin-1m[`asadmin`(1M)] help page.
`--help`::
`-?`::
Displays the help text for the subcommand.
`--transactionlogdir`::
The location of the transaction logs for a server for which
transaction recovery is requested. This option applies only if
transaction logs are stored on a shared file system.
`--target`::
The target server that performs the recovery for the server that is
specified by the server_name operand. The target server should be
running.
`--destination`::
This option is deprecated. It works exactly as the `--target` option
does.
[[sthref1955]]
=== Operands
server_name::
For a stand-alone server, the value of this operand is typically
`server`. Transactions are recovered only if a resource fails, but the
server is still running.
+
For an installation of multiple server instances, the value of this
operand is the name of the server for which the recovery is required.
The in-flight transactions on this server will be recovered. If this
server is running, recovery is performed by the same server. In this
situation, the `--transactionlogdir` and `--target` options should be
omitted. If the server is not running, the `--target` option is
required, and the `--transactionlogdir` option is also required if
transaction logs are stored on a shared file system.
[[sthref1956]]
=== Examples
[[GSRFM733]][[sthref1957]]
==== Example 1   Recovering transactions on a running server
[source]
----
% asadmin recover-transactions server1
Transaction recovered.
----
[[GSRFM734]][[sthref1958]]
==== Example 2   Recovering transactions for a server that is not running
[source]
----
% asadmin recover-transactions --transactionlogdir /logs/tx --target server1 server2
Transaction recovered.
----
[[sthref1959]]
=== Exit Status
0::
command executed successfully
1::
error in executing the command
[[sthref1960]]
=== See Also
link:asadmin.html#asadmin-1m[`asadmin`(1M)]
link:freeze-transaction-service.html#freeze-transaction-service-1[`freeze-transaction-service`(1)],
link:rollback-transaction.html#rollback-transaction-1[`rollback-transaction`(1)],
link:unfreeze-transaction-service.html#unfreeze-transaction-service-1[`unfreeze-transaction-service`(1)]
"link:administration-guide/transactions.html#GSADG00022[Administering Transactions]"
in {productName} Administration Guide
"https://eclipse-ee4j.github.io/jakartaee-tutorial/#transactions[Transactions]"
in The Jakarta EE Tutorial