pg_stat_progress_copy — PostgreSQL statistics view

The PostgreSQL pg_stat_progress_copy statistics view: full column reference (names, types, descriptions), catalog relationships and version support.

Summary

Whenever COPY is running, the pg_stat_progress_copy view will contain one row for each backend that is currently running a COPY command. The table below describes the information that will be reported and provides information about how to interpret it.

(Description quoted from the official PostgreSQL documentation.)

Columns

The pg_stat_progress_copy statistics view exposes the following columns (names, types and descriptions are taken verbatim from the PostgreSQL documentation):

  • pid integer
    Process ID of backend.
  • datid oid
    OID of the database to which this backend is connected.
  • datname name
    Name of the database to which this backend is connected.
  • relid oid
    OID of the table on which the COPY command is executed. It is set to 0 if copying from a SELECT query.
  • command text
    The command that is running: COPY FROM, or COPY TO.
  • type text
    The I/O type that the data is read from or written to: FILE, PROGRAM, PIPE (for COPY FROM STDIN and COPY TO STDOUT), or CALLBACK (used for example during the initial table synchronization in logical replication).
  • bytes_processed bigint
    Number of bytes already processed by COPY command.
  • bytes_total bigint
    Size of source file for COPY FROM command in bytes. It is set to 0 if not available.
  • tuples_processed bigint
    Number of tuples already processed by COPY command.
  • tuples_excluded bigint
    Number of tuples not processed because they were excluded by the WHERE clause of the COPY command.
  • tuples_skipped bigint
    Number of tuples skipped because they contain malformed data. This counter only advances when ignore is specified to the ON_ERROR option.

Version applicability

Present in PostgreSQL 17, 18, 19 (verified against each release’s documentation). This is a long-standing system object that also exists in earlier PostgreSQL releases.

Related & references

Reference: PostgreSQL documentation — pg_stat_progress_copy.