type=page
status=published
title=unfreeze-transaction-service
next=uninstall-node.html
prev=undeploy.html
~~~~~~
unfreeze-transaction-service
============================

[[unfreeze-transaction-service-1]][[GSRFM00245]][[unfreeze-transaction-service]]

unfreeze-transaction-service
----------------------------

resumes all suspended transactions

[[sthref2199]]

Synopsis

[source,oac_no_warn]
----
asadmin [asadmin-options] unfreeze-transaction-service [--help] 
[--target target]
----

[[sthref2200]]

Description

The `unfreeze-transaction-service` subcommand restarts the transaction
subsystem and resumes all in-flight transactions. Invoke this subcommand
on an already frozen transaction subsystem. This subcommand is supported
in remote mode only.

[[sthref2201]]

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.
`--target`::
  This option specifies the target on which you are unfreezing the
  transaction service. Valid values are: +
  `server`;;
    Unfreezes the transaction service for the default server instance
    `server` and is the default value.
  configuration_name;;
    Unfreezes the transaction service for all server instances that use
    the named configuration.
  cluster_name;;
    Unfreezes the transaction service for every server instance in the
    cluster.
  instance_name;;
    Unfreezes the transaction service for a particular server instance.

[[sthref2202]]

Examples

[[GSRFM772]][[sthref2203]]

Example 1   Using unfreeze-transaction-service

[source,oac_no_warn]
----
% asadmin unfreeze-transaction-service
Command unfreeze-transaction-service executed successfully
----

[[sthref2204]]

Exit Status

0::
  command executed successfully
1::
  error in executing the command

[[sthref2205]]

See Also

link:asadmin.html#asadmin-1m[`asadmin`(1M)]

link:freeze-transaction-service.html#freeze-transaction-service-1[`freeze-transaction-service`(1)],
link:recover-transactions.html#recover-transactions-1[`recover-transactions`(1)],
link:rollback-transaction.html#rollback-transaction-1[`rollback-transaction`(1)]

"link:../administration-guide/transactions.html#GSADG00022[Administering Transactions]" in GlassFish Server Open
Source Edition Administration Guide

"http://docs.oracle.com/javaee/7/tutorial/doc/transactions.html[Transactions]"
in The Java EE 8 Tutorial


