SYSTEM$WAIT_FOR_OPENFLOW_CONNECTOR_STATUS
SYSTEM$WAIT_FOR_OPENFLOW_CONNECTOR_STATUS
각각 이름이 지정된 커넥터(connector)가 사용자가 지정한 상태 중 하나에 도달할 때까지 기다리는 시스템 함수예요. ALTER 명령 뒤에 예상 상태를 알고 있을 때 이 함수를 사용해요. 커넥터가 안정될 때까지 기다리기만 하면 되면 대신 SYSTEM$WAIT_FOR_STABLE_OPENFLOW_CONNECTORS를 사용하세요.
본문
참고:
- SYSTEM$WAIT_FOR_STABLE_OPENFLOW_DEPLOYMENTS, SYSTEM$WAIT_FOR_OPENFLOW_DEPLOYMENT_STATUS, SYSTEM$WAIT_FOR_STABLE_OPENFLOW_RUNTIMES, SYSTEM$WAIT_FOR_OPENFLOW_RUNTIME_STATUS, SYSTEM$WAIT_FOR_STABLE_OPENFLOW_CONNECTORS
Syntax
SELECT SYSTEM$WAIT_FOR_OPENFLOW_CONNECTOR_STATUS(
<timeout_seconds>,
'<allowed_statuses>',
'<connector_name>' [ , '<connector_name>' ... ]
);
Arguments
timeout_seconds:
기다릴 최대 시간(초 단위)이에요.
'allowed_statuses':
허용 가능한 상태의 쉼표로 구분된 목록이에요, 예: 'RUNNING' 또는 'RUNNING,STOPPED'.
'connector_name':
하나 이상의 커넥터 이름이에요. 정규화된 이름 <database>.<schema>.<name>을 사용해요. USE DATABASE와 USE SCHEMA가 설정되어 있으면 단순 이름이 현재 세션에서 해석돼요.
커넥터의 일반적인 상태 값:
- STOPPED — STOP 또는 COMMIT 이후
- RUNNING — START 이후
- TERMINATED — TERMINATE 이후
Returns
성공하면 'OK'를 반환해요. 시간이 초과되거나 커넥터가 실패 상태에 진입하면 오류를 발생시켜요.
Access control
이름이 지정된 커넥터에 대한 모든 권한이 필요해요.
Usage notes
- Openflow UI는 내부적으로 동등한 폴링(polling)을 수행해요.
- 커넥터 시작은 일반적으로 1~3분이 걸려요. 300초의 시간 초과가 합리적인 기본값이에요.
- 함수가 시간 초과되면 기본 작업은 계속 진행돼요. 새 시간 초과로 대기 함수를 다시 실행하세요.
Examples
시작한 후 커넥터가 RUNNING에 도달할 때까지 기다리기:
ALTER OPENFLOW CONNECTOR my_db.my_schema.my_connector START;
SELECT SYSTEM$WAIT_FOR_OPENFLOW_CONNECTOR_STATUS(
600,
'RUNNING',
'my_db.my_schema.my_connector'
);