

 O Amazon Redshift não permitirá mais a criação de UDFs do Python a partir do Patch 198. As UDFs do Python existentes continuarão a funcionar normalmente até 30 de junho de 2026. Para ter mais informações, consulte a [publicação de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

# PG\$1CANCEL\$1BACKEND
<a name="PG_CANCEL_BACKEND"></a>

Cancela uma consulta. PG\$1CANCEL\$1BACKEND é funcionalmente equivalente ao comando [CANCEL](r_CANCEL.md). Você pode cancelar consultas atualmente em execução pelo seu usuário. Superusuários podem cancelar qualquer consulta.

## Sintaxe
<a name="PG_CANCEL_BACKEND-synopsis"></a>

```
pg_cancel_backend( pid )
```

## Argumentos
<a name="PG_CANCEL_BACKEND-arguments"></a>

 *pid*   
O ID de processo (PID) da consulta a ser cancelada. Você não pode cancelar uma consulta especificando um ID de consulta; você deve especificar o ID de processo da consulta. Requer um valor `INTEGER`.

## Tipo de retorno
<a name="PG_CANCEL_BACKEND-return-type"></a>

Nenhum

## Observações de uso
<a name="PG_CANCEL_BACKEND-usage-notes"></a>

Se consultas em várias sessões têm bloqueios na mesma tabela, você pode usar a função [PG\$1TERMINATE\$1BACKEND](PG_TERMINATE_BACKEND.md) para encerrar uma das sessões, o que força todas as transações atualmente em execução na sessão encerrada a liberar todos os bloqueios e reverter a transação. Consulte a tabela de catálogo PG\$1\$1LOCKS para visualizar os bloqueios atuais. Se você não puder cancelar uma consulta pois ela está em um bloco de transação (BEGIN… END), você pode encerrar a sessão na qual a consulta está em execução usando a função PG\$1TERMINATE\$1BACKEND. 

## Exemplos
<a name="PG_CANCEL_BACKEND-example"></a>

Para cancelar uma consulta atualmente em execução, recupere primeiro o ID de processo para a consulta que você deseja cancelar. Para determinar os IDs de processo para todas as consultas em execução atualmente, execute o comando a seguir. 

```
SELECT pid, TRIM(starttime) AS start, 
duration, TRIM(user_name) AS user,
SUBSTRING(query,1,40) AS querytxt
FROM stv_recents
WHERE status = 'Running';

+-----+------------------------+----------+--------+-----------------------------+
| pid |       starttime        | duration |  user  |          querytxt           |
+-----+------------------------+----------+--------+-----------------------------+
| 802 | 2013-10-14 09:19:03.55 |      132 | dwuser | select venuename from venue |
| 834 | 2013-10-14 08:33:49.47 |  1250414 | dwuser | select * from listing;      |
| 964 | 2013-10-14 08:30:43.29 |   326179 | dwuser | select sellerid from sales  |
+-----+------------------------+----------+--------+-----------------------------+
```

Para cancelar a consulta com o ID de processo 802, use o exemplo a seguir.

```
SELECT PG_CANCEL_BACKEND(802);
```