카테고리:

시스템 함수 (시스템 제어)

SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS

시스템이 이미 처리를 시작한 지정된 작업의 실행(즉, TASK_HISTORY 출력에서 EXECUTING 상태인 실행)을 중단합니다.

구문

SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS( '<task_name>' )
Copy

인자

task_name

작업의 이름입니다.

사용법 노트

  • 작업 소유자(즉, 작업에 대한 OWNERSHIP 권한이 있는 역할) 또는 작업에 대한 OPERATE 권한이 있는 역할만 이 함수를 호출할 수 있습니다.

  • task_name 은 문자열이므로 작은따옴표로 묶어야 합니다.

    • 데이터베이스와 스키마(이름이 정규화된 경우)를 포함하여 전체 이름을 작은따옴표로 묶어야 합니다. 즉, '<db>.<스키마>.<작업_이름>' 이어야 합니다.

    • 작업 이름이 대/소문자를 구분하거나 특수 문자나 공백이 포함된 경우, 대/소문자를 처리하려면 큰따옴표가 필요합니다. 큰따옴표는 작은따옴표로 묶어야 합니다. 즉, '"<작업_이름>"' 이어야 합니다.

  • 이 함수는 지정된 작업의 현재 실행이 실제로 취소되기 전에 성공 메시지를 반환합니다.

  • 지정된 작업의 현재 실행이 거의 완료된 경우 이 함수가 실행을 취소하지 않을 수 있습니다.

  • 이 함수는 지정된 작업의 현재 실행만 취소합니다. 이 작업을 포함하는 DAG 의 추가 작업도 실행 중일 수 있습니다. 이러한 실행을 취소하려면 이 함수를 호출하고 각 추가 하위 작업의 이름을 따로 지정해야 합니다.

    작업 실행이 취소 또는 완료되었는지 확인하거나 하위 작업이 현재 실행 중인지 확인하려면 TASK_HISTORY 함수를 쿼리하십시오.

  • 향후 작업 실행이 시작되지 않도록 하려면 먼저 작업을 일시 중단(ALTER TASK … SUSPEND 사용)한 다음 이 함수를 실행하는 것이 좋습니다.

    이 함수가 실행될 때 작업이 일시 중단되지 않는 경우, Snowflake 클라우드 서비스가 이 작업의 실행 예약을 다시 시작하는 데 현재 몇 분이 걸립니다.

대/소문자를 구분하지 않는 이름이 있는 작업의 현재 실행을 중단합니다.

SELECT SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS('mydb.myschema.mytask');
Copy

대/소문자를 구분하는 이름이 있는 작업의 현재 실행을 중단합니다.

SELECT SYSTEM$USER_TASK_CANCEL_ONGOING_EXECUTIONS('mydb.myschema."myTask"');
Copy