# system.processes

A read-only snapshot of active requests. A request remains visible until its response write completes, whether it succeeds or fails. Membership does not depend on log_queries.

## Columns

| Name                                                          | Meaning                                                                |
| ------------------------------------------------------------- | ---------------------------------------------------------------------- |
| query_id                                                      | Current request identifier.                                            |
| user                                                          | Authenticated user.                                                    |
| interface                                                     | TCP or HTTP interface.                                                 |
| current_database                                              | Selected database.                                                     |
| query                                                         | Request SQL text.                                                      |
| query_kind                                                    | Current statement classification.                                      |
| elapsed                                                       | Elapsed seconds.                                                       |
| address, port                                                 | Client network endpoint.                                               |
| initial_user, initial_query_id, initial_address, initial_port | Initial request identity fields.                                       |
| is_initial_query                                              | Initial-request flag.                                                  |
| is_internal                                                   | Internal-request flag.                                                 |
| is_cancelled                                                  | Cancellation status; server-side cancellation is unavailable.          |
| is_all_data_sent                                              | Response-delivery status.                                              |
| read_rows, read_bytes                                         | Observed read work.                                                    |
| written_rows, written_bytes                                   | Observed write work.                                                   |
| memory_usage, peak_memory_usage                               | Current and peak accounted SQL memory.                                 |
| total_rows_approx                                             | Available approximate total row count.                                 |
| peak_threads_usage                                            | Maximum total query threads observed, including the main query thread. |
| normalized_query_hash                                         | Hash grouping structurally normalized SQL.                             |

## Counters

Memory counters cover accounted SQL allocations across the request's query threads, including when max_memory_usage is zero. Serial execution reports peak_threads_usage of 1.

Physical read counters can include rows later rejected by a filter. Deleted rows do not count as newly written rows. These observations describe work performed, rather than only the final returned row count.

## Example

The observing query can see its own request:

```sql
SELECT user, interface, query_kind
FROM system.processes
WHERE query LIKE '%processes%'
FORMAT csv;
```

```text
"default","TCP","SELECT"
```

Always use the system qualifier. See [query history](https://coordinatordb.com/docs/reference/system-tables/query-log) for terminal events and [request limits](https://coordinatordb.com/docs/concepts/features/configuration/settings/query-complexity) for accounting scope.
