- Catégories :
Fonctions système (Informations système)
SYSTEM$CATALOG_LINK_STATUS¶
Renvoie le statut du lien pour une base de données liée au catalogue spécifiée.
Syntaxe¶
SYSTEM$CATALOG_LINK_STATUS( '<catalog_linked_db_name>' )
Arguments¶
'catalog_linked_db_name'Spécifie le nom de la base de données liée au catalogue dont vous souhaitez vérifier le statut.
Renvoie¶
La fonction renvoie un objet JSON contenant les paires nom/valeur suivantes :
{
"executionState":"<value>",
"failedExecutionStateReason":"<value>",
"failedExecutionStateErrorCode":"<value>",
"lastLinkAttemptStartTime":"<value>",
"failureDetails":[
{
"qualifiedEntityName":"<value>",
"entityDomain":"<value>",
"operation":"<value>",
"errorCode":"<value>",
"errorMessage":"<value>"
},
{ ... },
...
]
}
Où :
executionStateÉtat d’exécution actuel de l’opération de liaison que Snowflake utilise pour se connecter à votre catalogue Iceberg.
Valeurs :
RUNNING: La prochaine synchronisation de découverte de la table est planifiée ou en cours d’exécution ; ne garantit pas que toutes les tables ont été synchronisées avec succès.
FAILED: Échec de l’opération de liaison en raison d’une erreur.failedExecutionStateReasonMessage d’erreur associé à un état d’exécution
FAILED. N’apparaît pas dans la sortie de la fonction si la dernière tentative de synchronisation a réussi.failedExecutionStateErrorCodeCode d’erreur associé à un état d’exécution
FAILED. N’apparaît pas dans la sortie de la fonction si la dernière tentative de synchronisation a réussi.lastLinkAttemptStartTimeHorodatage indiquant la dernière fois où Snowflake a lancé le processus de détection et de synchronisation des modifications dans le catalogue distant.
failureDetailsTableau d’objets qui fournissent des détails sur les entités (par exemple, les tables) du catalogue distant que Snowflake ne peut pas synchroniser. Chaque objet comporte les champs suivants :
qualifiedEntityNameNom qualifié de l’entité dans le catalogue distant, relatif au nom du catalogue.
Par exemple,
namespace_level_1.namespace_level_2.table_name.Type : Chaîne
entityDomainLe domaine de l’entité dans le catalogue distant ; par exemple, TABLE.
Type : Chaîne
operationL’opération dans Snowflake associée à la synchronisation ; par exemple, CREATE (table ou schéma), DROP.
Type : Chaîne
errorCodeCode d’erreur associé à l’échec.
Type : Chaîne
errorMessageCode d’erreur associé à l’échec.
Type : Chaîne
Exigences en matière de contrôle d’accès¶
Un rôle utilisé pour exécuter cette commande SQL doit avoir l’un des privilèges suivants au minimum :
Privilège |
Objet |
|---|---|
OWNERSHIP |
La base de données cible liée au catalogue. |
MONITOR |
La base de données cible liée au catalogue. |
Notes sur l’utilisation¶
Le champ
failureDetailsrenvoie des informations sur les échecs DROP SCHEMA et DROP ICEBERG TABLE.Renvoie les résultats à condition que vous utilisiez un rôle doté d’un privilège sur la base de données liée au catalogue spécifié. Pour plus d’informations, voir Privilèges de base de données.
Exemples¶
Récupérer le statut du lien pour une base de données liée au catalogue nommée my_cld :
SELECT SYSTEM$CATALOG_LINK_STATUS('my_cld');
Sortie :
{
"executionState": "RUNNING",
"lastLinkAttemptStartTime": "2025-02-14T01:35:01.71Z",
"failureDetails": [
{
"qualifiedEntityName": "my_namespace.table_1",
"entityDomain": "TABLE",
"operation": "CREATE",
"errorCode": "0040000",
"errorMessage": "An internal error occurred. Please contact Snowflake support."
},
{
"qualifiedEntityName": "my_namespace.table_2",
"entityDomain": "TABLE",
"operation": "CREATE",
"errorCode": "0040000",
"errorMessage": "An internal error occurred. Please contact Snowflake support."
}
]
}