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]
----
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]
----
% 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


