Catégories :

Information Schema , Fonctions de table

REPLICATION_GROUP_DANGLING_REFERENCES

Détecte les cas où un objet qui est référencé dans un groupe de réplication ou un groupe de basculement n’est pas réellement répliqué sur le compte secondaire. Snowflake appelle ces types de références les références pendantes.

Après avoir utilisé cette fonction pour détecter les références pendantes dans votre configuration de réplication, vous pouvez réorganiser vos groupes de réplication ou vos groupes de basculement afin que tous les objets référencés soient inclus. Ou, vous pouvez modifier la hiérarchie de vos objets SQL de sorte que les objets référencés fassent partie d’un conteneur tel qu’une base de données ou un schéma inclus dans les groupes de réplication ou les groupes de basculement.

Si vous utilisez plusieurs groupes de réplication ou groupes de basculement, vous pouvez également spécifier l’ordre des opérations d’actualisation afin de vous assurer que tous les objets nécessaires à la résolution des références pendantes sont répliqués sur le compte secondaire avant les objets qui s’y réfèrent.

Important

Accordez une attention particulière à toute valeur TRUE dans la colonne IS_BLOCKING_REFRESH. Les opérations d’actualisation et de basculement ne peuvent pas avoir lieu tant que vous n’avez pas résolu ces références.

Voir aussi :

Réplication et références à travers les groupes de réplication

Syntaxe

REPLICATION_GROUP_DANGLING_REFERENCES( '<replication_or_failover_group_name>' )
Copy

Arguments

'replication_or_failover_group_name'

Nom du groupe de réplication ou du groupe de basculement dont il faut vérifier les références pendantes. Le nom entier doit être entre guillemets simples.

Sortie

La fonction renvoie les colonnes suivantes.

Nom de la colonne

Type de données

Description

REFERENCED_ENTITY_DOMAIN

VARCHAR

Le domaine de l’entité référencée par la référence pendante.

REFERENCED_ENTITY_NAME

VARCHAR

Nom complet de l’entité à laquelle la référence pendante fait référence.

REFERENCING_ENTITY_DOMAIN

VARCHAR

Le domaine de l’entité dans le groupe de réplication avec une référence pendante, par exemple, Table.

REFERENCING_ENTITY_NAME

VARCHAR

Nom complet de l’entité dans le groupe de réplication avec une référence pendante.

REFERENCING_ENTITY_GROUPS

VARCHAR

Une liste de tous les groupes de réplication contenant l’entité de référence, séparés par des virgules, ou NULL si aucun groupe ne contient cette entité.

IS_BLOCKING_REFRESH

BOOLEAN

Si TRUE, les actualisations et les basculements de la réplication échoueront jusqu’à ce que cette référence soit résolue. Si FALSE, Snowflake peut effectuer ces opérations malgré la référence pendante.

Notes sur l’utilisation

  • Lors de l’appel d’une fonction de table Information Schema, la session doit avoir un schéma INFORMATION_SCHEMA en cours d’utilisation ou le nom de la fonction doit être complètement qualifié. Pour plus d’informations, voir Schéma d’information de Snowflake.

  • Vous pouvez exécuter cette fonction depuis n’importe quel compte de votre organisation. Le groupe de réplication ou le groupe de basculement que vous spécifiez doit exister dans le compte qui appelle la fonction. En d’autres termes, vous spécifiez le nom du groupe utilisé dans la région du fournisseur de services cloud où vous appelez la fonction.

    • Si la fonction est appelée en utilisant un groupe de réplication ou un groupe de basculement sur le compte principal, elle signale les références pendantes si les objets de référence correspondants ne sont pas répliqués vers tous les comptes secondaires.

    • Si la fonction est appelée en utilisant un groupe de réplication ou un groupe de basculement sur le compte secondaire, elle signale les références pendantes si les objets de référence correspondants ne sont pas répliqués vers l’élément secondaire spécifique où la fonction a été appelée.

  • Pour plus d’informations sur la manière de gérer les références pendantes dans les groupes de réplication et les groupes de basculement, voir Réplication et références à travers les groupes de réplication.

Exemples

Pour vérifier les références pendantes dans le groupe de basculement myfg, exécutez l’instruction suivante à partir de votre compte principal ou secondaire.

SELECT *
  FROM TABLE(
      INFORMATION_SCHEMA.REPLICATION_GROUP_DANGLING_REFERENCES('myfg')
  );
Copy