- Categorias:
Funções do sistema (Controle do sistema)
SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS¶
Anula uma execução da tarefa especificada que o sistema já começou a processar (ou seja, uma execução com um estado EXECUTING na saída TASK_HISTORY).
Sintaxe¶
SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS( '<task_name>' )
Argumentos¶
task_name
Nome da tarefa.
Notas de uso¶
Somente o proprietário da tarefa (ou seja, a função com o privilégio OWNERSHIP na tarefa) ou uma função com o privilégio OPERATE na tarefa pode chamar esta função:
task_name
é uma cadeia de caracteres, portanto, deve ser delimitada por aspas simples:Observe que o nome completo deve ser incluído entre aspas simples, incluindo o banco de dados e o esquema (se o nome for totalmente qualificado), ou seja,
'<bd>.<esquema>.<nome_tarefa>'
.Se o nome da tarefa diferenciar letras maiúsculas e minúsculas ou incluir quaisquer caracteres ou espaços especiais, as aspas duplas são necessárias para processar o caso/caracteres. As aspas duplas devem ser incluídas dentro das aspas simples, ou seja,
'"<nome_tarefa>"'
.
Essa função retorna uma mensagem de sucesso antes que a execução atual da tarefa especificada seja de fato cancelada.
Se a execução atual da tarefa especificada estiver quase concluída, essa função pode não cancelar a execução.
Essa função cancela apenas a execução atual da tarefa especificada. Tarefas adicionais em um gráfico de tarefas que inclui esta tarefa também podem estar em execução. Para cancelar essas execuções, você deve chamar essa função e especificar o nome de cada tarefa filho adicional separadamente.
Para verificar se uma execução de tarefa foi cancelada ou concluída, ou se alguma tarefa filho está atualmente em execução, consulte a função TASK_HISTORY.
Para evitar futuras execuções da tarefa, recomendamos primeiro suspender a tarefa (usando ALTER TASK … SUSPEND) e depois executar esta função.
Observe que se a tarefa não for suspensa quando esta função for executada, atualmente serão necessários vários minutos para que os serviços de nuvem do Snowflake comecem a programar novamente a execução desta tarefa.
Exemplos¶
Anular a execução atual de uma tarefa com um nome que não diferencia maiúsculas e minúsculas:
SELECT SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS('mydb.myschema.mytask');
Anular a execução atual de uma tarefa com um nome que diferencia maiúsculas e minúsculas:
SELECT SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS('mydb.myschema."myTask"');