Snowpark Migration Accelerator : Catégorisation des codes de problème¶
L’outil Snowpark Migration Accelerator (SMA) analyse votre base de code et génère des codes de problème. Bien que ces codes fournissent des informations détaillées, ils se répartissent en trois catégories principales.
Erreur d’analyse¶
Une erreur d’analyse se produit lorsque SMA ne peut pas comprendre ou traiter une section de votre code source. Cela se produit lorsque SMA rencontre un code qu’il ne reconnaît pas ou qu’il considère comme non valide. Ces erreurs ont généralement deux origines :
Un problème au niveau de l’outil SMA lui-même
Problèmes dans votre code source
Ce type d’erreur peut se produire pour diverses raisons.
Code source invalide : Le code doit être exécutable dans la plateforme source. Si vous fournissez des extraits de code ou du code partiel qui ne peuvent pas s’exécuter indépendamment dans la plateforme source, SMA ne pourra pas les analyser.
Dépendances circulaires : Lors de l’analyse de larges bases de code, SMA peut rencontrer des références circulaires entre des éléments de code. L’outil peut alors ignorer ou ne pas analyser certaines de ces références interdépendantes.
Nouveaux modèles de code : Alors que SMA est régulièrement mis à jour, les plateformes sources évoluent elles aussi en permanence. Dans certains cas, les nouveaux modèles de code introduits ne sont pas encore pris en charge par l’outil.
Problèmes d’encodage : Si votre code source contient un encodage incohérent ou des caractères inattendus au début ou à la fin des fichiers, SMA peut générer des erreurs d’analyse, même si le code s’exécute avec succès dans la plateforme source.
Lorsque des erreurs d’analyse se produisent, elles sont identifiées par des codes d’erreur spécifiques. Pour comprendre la signification de ces codes et leur lien avec les erreurs d’analyse, veuillez vous référer à la section Codes de problème par source dans notre documentation.
Erreur de conversion¶
Une erreur de conversion se produit lorsque SMA identifie avec succès le code mais qu’il ne parvient pas à le convertir. Contrairement aux erreurs d’analyse, les erreurs de conversion n’indiquent pas de problèmes avec votre code source. Ils montrent plutôt que SMA fonctionne comme prévu en identifiant les segments de code qui dépassent ses capacités de conversion.
Il existe plusieurs raisons courantes pour lesquelles un code ne peut pas être converti. Il s’agit notamment des éléments suivants :
L’élément du code source ne peut pas être mis en œuvre dans Snowflake. Actuellement, il n’existe pas de fonctionnalité équivalente dans Snowflake pour cet élément du code source.
L’utilisation spécifique d’un élément n’est pas prise en charge par Snowflake. Bien que Snowflake puisse prendre en charge un élément particulier de la plateforme source, la manière dont il est utilisé dans le code source n’est pas compatible avec l’implémentation de Snowflake.
Les paramètres requis ne sont pas pris en charge. SMA crée un modèle fonctionnel détaillé du code source en analysant la manière dont chaque élément est utilisé, plutôt qu’en se contentant d’identifier et de classer les éléments. Parfois, les paramètres de fonction essentiels du code source n’ont pas de prise en charge correspondante dans Snowflake.
Certaines combinaisons de fonctions sont incompatibles. Le modèle fonctionnel de SMA analyse la façon dont les fonctions travaillent ensemble. Même lorsque des fonctions individuelles sont prises en charge par Snowflake, leur utilisation combinée peut s’avérer impossible. Dans ce cas, SMA signale une erreur de conversion.
La plupart des messages d’erreur contiennent des recommandations spécifiques ou les étapes suivantes pour vous aider à résoudre le problème de conversion. Vous trouverez ces suggestions sur la page d’erreur correspondante.
Lorsque SMA rencontre une erreur de conversion, il ajoute un commentaire EWI (Error, Warning, Info) dans le code converti et enregistre l’erreur dans le fichier d’inventaire des problèmes. Le système va alors :
Ajouter un symbole de commentaire à la ligne contenant l’erreur de conversion.
Laisser la ligne sans commentaire pour empêcher l’exécution du fichier.
Lorsque vous rencontrez des erreurs de conversion, chaque erreur a un code d’erreur unique. Pour comprendre la signification de ces codes et savoir comment les résoudre, veuillez vous référer à la section Codes de problème par source de notre documentation.
Avertissement¶
Un avertissement diffère d’une erreur dans SMA. Des avertissements apparaissent lorsque l’outil détecte des changements dont vous devez tenir compte. Bien que ces changements n’empêchent pas l’exécution de votre code, ils indiquent que certains aspects de votre code peuvent se présenter ou se comporter différemment dans la sortie convertie par rapport au code source.
Raisons courantes des messages d’avertissement :
Le code apparaît différemment. SMA effectue des transformations qui génèrent un message (EWI) (Error, Warning, or Information)
Certains scénarios spécifiques peuvent ne pas être convertis avec succès. L’outil génère un avertissement si une fonction particulière fonctionne dans 99,9 % des cas de test mais échoue dans certaines combinaisons de paramètres. Si votre code utilise ces combinaisons de paramètres spécifiques, vous recevrez une erreur de conversion.
Des éléments ont été omis. Il s’agit du type d’avertissement le plus fréquent. De nombreuses fonctions ou paramètres essentiels dans le système source ne sont pas requis dans Snowflake.
Les avertissements sont des messages d’information qui ne nécessitent généralement pas d’action immédiate. Toutefois, nous vous recommandons vivement d’examiner tous les avertissements avant de déployer le code dans l’environnement cible. Ces avertissements doivent être pris en compte lors de la phase de test du code converti.
Les avertissements sont identifiés par des codes d’erreur spécifiques. Pour comprendre la signification de ces codes, référez-vous à la section Codes de problème par source de cette documentation.