- Categorias:
Funções do sistema (Controle do sistema)
SYSTEM$PIPE_FORCE_RESUME¶
Força um canal pausado usando ALTER PIPE a retomar. Isso é necessário em um dos seguintes cenários:
O proprietário do canal transfere a propriedade do canal para outra função enquanto o canal está pausado.
O canal pausado pode se tornar obsoleto.
Um canal é considerado obsoleto quando é pausado por mais tempo do que o período de retenção limitado para mensagens de eventos recebidas para o canal (o padrão são 14 dias). Quando cada notificação chega ao fim desse período, o Snowflake o programa para ser descartado dos metadados internos. Se o canal for retomado mais tarde, Snowpipe pode processar notificações mais antigas que 14 dias com base no melhor esforço. A Snowflake não pode garantir que essas notificações mais antigas sejam processadas.
Este cenário diz respeito apenas a objetos de canal que aproveitam as mensagens em nuvem para acionar carregamentos de dados (ou seja, onde
AUTO_INGEST = TRUE
na definição do canal).
A execução desta função retoma o canal especificado.
Para determinar quantos arquivos estão em fila, consulte SYSTEM$PIPE_STATUS.
Para obter mais informações, consulte Snowpipe.
Sintaxe¶
SYSTEM$PIPE_FORCE_RESUME( '<pipe_name>' , '[ STALENESS_CHECK_OVERRIDE ] [ , OWNERSHIP_TRANSFER_CHECK_OVERRIDE ]')
Argumentos¶
pipe_name
Canal para retomar a execução.
STALENESS_CHECK_OVERRIDE
Especifica a retomada de um canal obsoleto. Um canal é considerado obsoleto quando é pausado por mais tempo do que o período de retenção limitado para mensagens de eventos recebidas para o canal (o padrão são 14 dias).
Nota
Este argumento só diz respeito a objetos de canal que aproveitam as mensagens em nuvem para acionar carregamentos de dados.
OWNERSHIP_TRANSFER_CHECK_OVERRIDE
Especifica a retomada de um canal após a transferência da propriedade do canal para outra função.
Nota
Para garantir a compatibilidade retroativa, passar
pipe_name
como única entrada é sintaticamente equivalente a passar tantopipe_name
comoOWNERSHIP_TRANSFER_CHECK_OVERRIDE
.
Se ambos STALENESS_CHECK_OVERRIDE
e OWNERSHIP_TRANSFER_CHECK_OVERRIDE
forem necessários, estes argumentos podem ser introduzidos em qualquer ordem.
Notas de uso¶
Somente o proprietário do canal (ou seja, a função com o privilégio OWNERSHIP no canal) ou uma função com o privilégio OPERATE no canal pode chamar esta função SQL:
Operações SQL sobre objetos de esquema também exigem o privilégio USAGE no banco de dados e esquema que contém o objeto.
pipe_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_canal>'
.Se o nome do canal 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_canal>"'
.
Exemplos¶
Forçar um canal com um nome que não diferencia maiúsculas e minúsculas a ser retomado:
SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.mypipe');
Forçar um canal com um nome que diferencia maiúsculas e minúsculas a ser retomado:
SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema."myPipe"');
Forçar a retomada de um canal obsoleto depois que sua propriedade foi transferida para outra função:
SELECT SYSTEM$PIPE_FORCE_RESUME('mydb.myschema.stalepipe','staleness_check_override, ownership_transfer_check_override');