Pacote 2022_08¶
Este tópico descreve as seguintes mudanças de comportamento (se houver) do mês:
Recursos que foram descontinuados.
Pacote de mudanças que foram ativadas.
Outras mudanças não inclusas no pacote que foram implementadas.
Se tiver alguma dúvida sobre estas mudanças, entre em contato com o suporte Snowflake.
Para obter mais detalhes sobre os novos recursos, melhorias e correções introduzidos neste mês, consulte Janeiro de 2023.
Importante
Salvo indicação em contrário, estas mudanças estão no pacote 2022_08, que foi habilitado por padrão na versão 7.2.
Neste tópico:
Mudanças de segurança¶
Editar integrações de segurança SAML2: aplicação das datas de validade de certificados X.509¶
Ao definir uma integração de segurança SAML2 para permitir um login único, o administrador de segurança especifica um certificado X.509 usando o parâmetro SAML2_X509_CERT
.
Snowflake agora impõe as datas de validade destes certificados X.509 de modo que certificados vencidos resultem em autenticação falhada. Certificados com uma data NotBefore
que ainda não tenha ocorrido também falham na autenticação. A imposição das datas de validade não pode ser desativada.
- Anteriormente:
Snowflake não verificou a data de validade de um certificado X.509 para verificar se ele estava expirado ou se a data
NotBefore
ainda não tinha ocorrido.- Atualmente:
Snowflake impõe as datas de validade de um certificado X.509. Se a data atual não se enquadrar nas datas de validade do certificado, a autenticação falhará.
Mudanças de SQL — Comandos e funções¶
Bancos de dados e esquemas: descarte ou substituição não permitida se isso resultar em referências pendentes para políticas de senhas e políticas de sessão¶
O comportamento das operações DROP SCHEMA, DROP DATABASE, CREATE OR REPLACE DATABASE e CREATE OR REPLACE SCHEMA com relação a uma política de senhas e política de sessão mudou da seguinte forma:
- Anteriormente:
Snowflake permitiu as operações DROP e REPLACE no esquema/base de dados que continham a política quando a política foi definida na conta Snowflake contendo a política ou quando a política foi definida em um usuário na mesma conta.
- Atualmente:
Snowflake permite as operações DROP e REPLACE no esquema/base de dados que contém a política quando a política é definida na conta Snowflake que contém a política ou quando a política é definida em um usuário na mesma conta.
Como resultado, o comportamento dos mesmos quatro comandos mudou.
Dependendo da operação, Snowflake retorna uma das seguintes mensagens de erro:
- Política definida em um usuário:
DROP DATABASE e CREATE OR REPLACE DATABASE:
Não é possível descartar o banco de dados porque a política 'MYDB.MYSCHEMA.POLICY1' está definida no usuário 'JSMITH'. Remova a definição da política 'MYDB.MYSCHEMA.POLICY1' e depois tente a operação de descarte novamente.
DROP SCHEMA e CREATE OR REPLACE SCHEMA:
Não é possível descartar o esquema porque a política 'MYDB.MYSCHEMA.POLICY1' está definida no usuário 'JSMITH'. Remova a definição da política 'MYDB.MYSCHEMA.POLICY1' e depois tente a operação de descarte novamente.
- Política definida na conta:
DROP DATABASE e CREATE OR REPLACE DATABASE:
Não é possível descartar o banco de dados porque a política 'MYDB.MYSCHEMA.POLICY1' está definida na conta 'MYACCOUNT'. Remova a definição da política 'MYDB.MYSCHEMA.POLICY1' e depois tente a operação de descarte novamente.
DROP SCHEMA e CREATE OR REPLACE SCHEMA:
Cannot drop schema because policy 'MYDB.MYSCHEMA.POLICY1' is set on account 'MYACC
Comando SHOW FUNCTIONS: nova coluna na saída¶
A seguinte coluna foi adicionada à saída do comando SHOW FUNCTIONS:
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
IS_MEMOIZABLE |
VARCHAR |
Especifica se a função é uma função memoizável. |
Para ajudar a minimizar o impacto desta adição, a coluna foi adicionada como a última coluna na saída.
Comando SHOW VIEWS: nova coluna na saída¶
A saída SHOW VIEWS inclui agora uma nova coluna CHANGE_TRACKING
. A coluna indica se o rastreamento de alterações está habilitado na exibição.
A coluna exibe um dos seguintes valores para exibições individuais:
ON
: o rastreamento de alterações está habilitado. Você pode consultar estes dados de rastreamento de alterações usando fluxos ou a cláusula CHANGES para instruções SELECT.OFF
: o rastreamento de alterações estará atualmente desabilitado, mas poderia ser habilitado.
Para ajudar a limitar o impacto desta mudança, a coluna foi adicionada como a última coluna na saída.
Mudanças de SQL — Exibições de uso e exibições Information Schema/funções de tabela¶
Exibições de uso de Data Sharing: mudanças na coluna nas exibições¶
Todas as exibições no esquema DATA_SHARING_USAGE (no banco de dados compartilhado SNOWFLAKE) mudaram como se segue:
- Anteriormente:
Os dados exibidos na coluna SNOWFLAKE_REGION nas exibições foram exibidos como
<região de> <nuvem>
, com todas as letras minúsculas (por exemplo,aws us_west_2
). Isto foi inconsistente com os valores exibidos para a região do Snowflake na saída SHOW REGIONS.Exibições impactadas:
- Atualmente:
Nas exibições listadas acima, os valores na coluna SNOWFLAKE_REGION são exibidos agora como
<região da>_<nuvem>
com todas as letras maiúsculas. Isto é consistente com a saída SHOW REGIONS.Por exemplo, a região
us_west_2
em AWS é agora exibida comoAWS_US_WEST_2
.
Exibições de uso de Data Sharing: nova coluna nas exibições¶
Este anúncio foi adicionado em 13 de fevereiro de 2023.
A coluna REGION_GROUP foi adicionada às seguintes exibições no esquema DATA_SHARING_USAGE:
Para ajudar a minimizar o impacto desta adição, a coluna REGION_GROUP foi adicionada como a última coluna na saída.
Exibição ACCESS_HISTORY (Account Usage): novas colunas na exibição¶
As seguintes colunas foram adicionadas à exibição ACCESS_HISTORY (no esquema ACCOUNT_USAGE):
object_modified_by_ddl
policies_referenced
Para ajudar a minimizar o impacto desta adição, essas colunas foram adicionadas como as últimas colunas na saída.
Observe que estas colunas são placeholders e serão preenchidas em um próximo lançamento.
Exibição FUNCTIONS (Information Schema): nova coluna na exibição¶
A seguinte coluna foi adicionada à exibição FUNCTIONS do Information Schema (no esquema INFORMATION_SCHEMA):
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
IS_MEMOIZABLE |
VARCHAR |
Especifica se a função é uma função memoizável. |
Para ajudar a minimizar o impacto desta adição, a coluna foi adicionada como a última coluna na exibição.
Exibição TABLE_CONSTRAINTS (Account Usage): nova coluna na exibição¶
A seguinte nova coluna foi adicionada à exibição TABLE_CONSTRAINTS (no esquema ACCOUNT_USAGE):
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
RELY |
VARCHAR |
Especifica se uma restrição no modo NOVALIDATE é levada em conta durante a reescrita da consulta. Para obter mais detalhes, consulte Propriedades estendidas de restrição. |
Exibição USAGE_IN_CURRENCY_DAILY (Organization Usage): nova coluna na exibição¶
A exibição USAGE_IN_CURRENCY_DAILY (no esquema ORGANIZATION_USAGE) agora inclui uma nova coluna BALANCE_SOURCE.
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
BALANCE_SOURCE |
VARCHAR |
Fonte dos fundos usados para pagar o uso diário. Como pode haver mais de uma origem em um determinado dia, a nova coluna fornece um insight adicional quando há múltiplas entradas para o mesmo dia e tipo de uso. |
Para ajudar a limitar o impacto desta mudança, a coluna foi adicionada como a última coluna na exibição.
Exibição USERS (Account Usage): nova coluna na exibição¶
A exibição USERS (no esquema ACCOUNT_USAGE) foi atualizada para incluir uma nova coluna USER_ID.
Mudanças no Data Sharing¶
Mudanças na replicação¶
Políticas de redes: referências pendentes para políticas com replicação e failover/failback¶
O comportamento das políticas de replicação e redes, juntamente com as políticas de failover/failback e de redes, mudou da seguinte forma:
- Anteriormente:
Com políticas de redes e suas referências (ou seja, atribuições à conta principal e usuários na conta principal):
Especifique POLICIES de USERS e NETWORK no grupo de replicação/failover quando houver políticas de redes em nível de usuário.
Especifique POLICIES de NETWORK no grupo de replicação/failover quando houver somente políticas de redes em nível de conta.
A replicação e o failover/failback ocorreram mesmo que o resultado tenha sido uma referência pendente na conta de destino.
Uma referência suspensa significa que um objeto na conta secundária faz referência a um objeto que não existe na mesma conta. Por exemplo:
Um usuário/nome de usuário na conta secundária faz referência a uma política de redes que não está na conta secundária. Este cenário ocorre quando uma política de redes é atribuída a um usuário na conta principal e o grupo de replicação/failover especifica POLICIES de USERS, mas não de NETWORK.
Uma política de redes é anexada à conta primária e o grupo de replicação/failover não inclui NETWORK POLICIES.
- Atualmente:
O comportamento atual mudou da seguinte forma:
Especifique POLICIES de PARAMETERS de ACCOUNT, USERS e NETWORK no grupo de replicação/failover quando houver políticas de redes em nível de usuário.
Especifique POLICIES de PARAMETERS de ACCOUNT e NETWORK no grupo de replicação/failover quando houver apenas políticas de redes em nível de conta.
A replicação e o failover/failback falham na conta secundária se o resultado for uma referência suspensa.
Por exemplo, se a conta principal tiver um conjunto de políticas de redes definido em nível de conta e uma política de redes definida em nível de usuário e referências suspensas seriam criadas na conta de destino tanto para o parâmetro em nível de conta quanto para o usuário:
Dangling references in the snapshot. Correct the errors before refreshing again. The following references are missing (referred entity <- [referring entities]): ACCOUNT PARAMETERS <- [NETWORK POLICIES]. Add ACCOUNT PARAMETER into the replication group to fix it. NETWORK_POLICY 'MYACCOUNT.P2' <- [USER 'MYACCOUNT.USERNAME']
Caso contrário, a mensagem de erro especifica a instrução do parâmetro da conta ou a instrução do usuário, dependendo de como o grupo de replicação está configurado e qual seria o resultado na conta de destino.
Grupos de replicação: limitar objetos de conta à associação em um único grupo¶
A replicação de conta permite a replicação de objetos de conta em um grupo de replicação ou de failover. Os objetos de conta podem incluir parâmetros de conta, funções, objetos de segurança e usuários. Para obter uma lista completa dos objetos suportados, consulte Objetos replicados.
Atualmente, se uma conta não tiver um grupo de failover que inclua tipos de objetos de conta, diferentes tipos de objetos de conta podem ser incluídos em mais de um grupo de replicação. O comportamento mudou da seguinte forma:
- Anteriormente:
Tipos de objetos de conta poderiam ser incluídos em mais de um grupo de réplicas.
- Atualmente:
Os tipos de objetos de conta são limitados a um grupo de replicação.
Grupos de replicação: parâmetros de contas somente leitura em contas de destino¶
Quando um tipo de objeto de conta for incluído em um grupo de replicação ou de failover, o tipo de objeto será somente de leitura na conta de destino. Por exemplo, se as funções forem replicadas para uma conta de destino, as funções não poderão ser criadas ou modificadas na conta de destino.
Os parâmetros da conta podem ser incluídos em um grupo de replicação ou de failover a ser replicado em uma conta de destino. Alguns parâmetros (por exemplo, STATEMENT_TIMEOUT_IN_SECONDS) podem ser definidos em vários níveis (por exemplo, no nível da conta e por usuário). A replicação do parâmetro de conta replica apenas a configuração de nível de conta para um parâmetro.
O comportamento para replicação do parâmetro da conta mudou da seguinte forma:
- Anteriormente:
Se PARAMETERS de ACCOUNT forem incluídos na lista OBJECT_TYPES para um grupo de replicação ou de failover, os parâmetros secundários de nível de conta nas contas de destino poderiam ser modificados.
- Atualmente:
Se PARAMETERS de ACCOUNT estiverem incluídos na lista OBJECT_TYPES para um grupo de replicação ou de failover, os parâmetros secundários de nível de conta nas contas de destino serão somente leitura.
Comando SHOW REPLICATIONGROUPS: mudanças na saída¶
O comando SHOW REPLICATION GROUPS inclui uma coluna next_scheduled_refresh
em sua saída que exibe a data e a hora da próxima atualização programada para um grupo de failover ou de replicação secundário com uma programação da replicação. Esta coluna será NULL para grupos de replicação secundária ou failover com uma programação de replicação se não estiver na região atual.
O comportamento mudou da seguinte forma:
- Anteriormente:
A coluna
next_scheduled_refresh
era NULL para grupos de réplica secundária ou failover com uma programação de replicação que não se encontrava na região atual.- Atualmente:
A coluna
next_scheduled_refresh
inclui a data e a hora para a próxima atualização programada para todos os grupos de replicação e failover secundários com uma programação de replicação.