# Class 25 — Invalid Transaction State

> Members and evidence boundaries for PostgreSQL SQLSTATE class 25.
---

# Class 25 — Invalid Transaction State

## Shared meaning {#meaning}

The first two characters `25` identify `Invalid Transaction State`. A transaction is not in the state required by the operation. A class gives a directory-level family; each member still needs its own message, transaction aftermath, and response evidence.

## Members {#members}

The locked catalogue contains 13 members in this class:

[`25000`](../../25000/), [`25001`](../../25001/), [`25002`](../../25002/), [`25003`](../../25003/), [`25004`](../../25004/), [`25005`](../../25005/), [`25006`](../../25006/), [`25007`](../../25007/), [`25008`](../../25008/), [`25P01`](../../25p01/), [`25P02`](../../25p02/), [`25P03`](../../25p03/), [`25P04`](../../25p04/)

## Version boundary {#versions}

Member links lead to their own versioned facts; consult the version pages and source evidence for exact presence and change boundaries.

## Sources {#sources}

Members are generated from `data/classes.json` and the locked SQLSTATE directory.
