cannot … “…” because it is being used by active queries in this ses…

SQLSTATE 55006 condition object_in_use class 55 — Object Not In Prerequisite State severity ERROR
Reproduced & verified on PostgreSQL 14.23, 15.18, 16.14, 17.10 and 18.4 — identical message on every version.
Last reviewed 4 Jun 2026 · Reproduced live with the SQL on this page.

Symptoms

A statement failed with SQLSTATE 55006 (object_in_use), reported at severity ERROR. This is a Object Not In Prerequisite State condition: PostgreSQL emits the message cannot … "…" because it is being used by active queries in this session.

What the server log shows

ERROR:  cannot … "…" because it is being used by active queries in this session

Why PostgreSQL raises this

Class 55 (Object Not In Prerequisite State) is raised when an object exists but is not in a state that allows the requested operation right now.

As described in PostgreSQL’s Appendix A PostgreSQL Error Codes, SQLSTATE 55006 carries the condition name object_in_use in class Object Not In Prerequisite State. (Paraphrased — see the linked reference for the exact wording.)

Common causes

How to fix it

  1. Wait for the conflicting session/operation to finish, then retry.
  2. Establish the missing precondition before retrying.
  3. Check for blocking locks with pg_locks.

Version applicability

This message is present in PostgreSQL 15, 16, 17, 18 and 19.

Related & next steps

Reference: PostgreSQL Appendix A PostgreSQL Error Codes.