---
title: "RELEASE SAVEPOINT"
url: "https://docs.yugabyte.com/stable/api/ysql/the-sql-language/statements/savepoint_release/"
---

# RELEASE SAVEPOINT

Use the `RELEASE SAVEPOINT` statement to release a savepoint.

## Synopsis

Use the `RELEASE SAVEPOINT` statement to release the server-side state associated with tracking a savepoint and make the named savepoint no longer accessible to [`ROLLBACK TO`](/stable/api/ysql/the-sql-language/statements/savepoint_rollback "ROLLBACK TO").

## Syntax

- [![Grammar Icon](/icons/file-lines.svg)Grammar](#grammar-1)
- [![Diagram Icon](/icons/diagram.svg)Diagram](#diagram-1)

```output.ebnf
savepoint_release ::= RELEASE [ SAVEPOINT ] name
```

#### savepoint\_release

RELEASESAVEPOINT[name](/stable/api/ysql/syntax_resources/grammar_diagrams#name)

## Semantics

### *release*

```plpgsql
RELEASE [ SAVEPOINT ] name
```

#### NAME

The name of the savepoint you wish to release.

Other savepoints may be released

When you release a savepoint, all savepoints that were created after it was created are also released.

## Examples

Begin a transaction and create a savepoint.

```plpgsql
BEGIN TRANSACTION;
SAVEPOINT test;
```

Once you are done with it, release the savepoint:

```plpgsql
RELEASE test;
```

If at this point, you attempt to rollback to `test`, it will be an error:

```plpgsql
ROLLBACK TO test;
```

```output
ERROR:  savepoint "test" does not exist
```

## See also

- [SAVEPOINT](/stable/api/ysql/the-sql-language/statements/savepoint_create "SAVEPOINT")
- [ROLLBACK TO](/stable/api/ysql/the-sql-language/statements/savepoint_rollback "ROLLBACK TO")
