Java de Native SDK pour Connectors - Notes de version

Notes de version pour Native SDK pour la bibliothèque Java Connectors.

Version 2.1.0 (8 juillet 2024)

Changements de comportement

  • Nouvelle approche d’identificateurs.

    Important

    Cette nouvelle approche peut modifier la manière dont les identificateurs sont utilisés dans votre connecteur, veuillez tester soigneusement les nouvelles modifications !

    • Le SDK s’attend désormais à ce que tous les identificateurs soient envoyés tels que fournis par l’utilisateur ; le SDK évaluera par lui-même s’il s’agit d’un identificateur cité ou non afin de le traiter correctement par la suite.

    • La citation automatique des identificateurs ne sera effectuée que lors de l’utilisation de valeurs renvoyées par des requêtes Snowflake.

    • Pour utiliser la nouvelle approche avec l’UI, le connecteur doit renvoyer une nouvelle propriété dans la vue PUBLIC.APP_PROPERTIES avec la clé de UI_ADD_QUOTES_TO_EXISTING_QUOTED_IDENTIFIERS et une valeur de TRUE.

    • Classe com.snowflake.connectors.common.object.Identifier modifiée :

      • Méthodes fromWithAutoQuoting() et getName() supprimées.

      • Suppression du concept d’identificateur vide ; méthodes empty(), isNullOrEmpty(), validateNullOrEmpty(), et isEmpty() supprimées.

      • Ajout de la nouvelle méthode from() qui permet d’activer la citation automatique lors de la création d’une instance d’identificateur ; la chaîne fournie ne sera pas automatiquement citée si elle est un identificateur entièrement en majuscules et non cité.

      • Méthode validate() modifiée pour isValid().

      • Méthode toSqlString() modifiée pour getValue().

      • Ajout des méthodes getUnquotedValue(), getQuotedValue(), getVariantValue(), et isUnquoted().

  • Classe com.snowflake.connectors.common.object.ObjectName modifiée :

    • Création de propriétés de base de données et de schéma Optional.

    • Modification du type de retour de getDatabase() et getSchema() en Optional.

    • Méthode validate() modifiée pour isValid().

    • Méthode validateDoubleDot() modifiée pour isDoubleDot().

    • Méthode getEscapedName() modifiée pour getValue().

    • Ajout des méthodes getVariantValue() et getSchemaName().

  • Classe com.snowflake.connectors.common.object.Reference modifiée :

    • Suppression du concept de référence vide ; méthodes empty() et isEmpty() supprimées.

    • Méthode validate() modifiée pour isValid().

    • Méthode referenceName() modifiée pour getName().

    • Méthode value() modifiée pour getValue().

    • Ajout d’une nouvelle classe com.snowflake.connectors.common.object.SchemaName pour représenter le schéma ; comportement similaire à la classe com.snowflake.connectors.common.object.ObjectName.

    • Ajout de la nouvelle classe com.snowflake.connectors.common.object.InvalidSchemaNameException.

Autres ajouts et modifications

  • Méthodes applyToAllInitializedTaskReactorInstances() modifiées dans le com.snowflake.connectors.taskreactor.TaskReactorInstanceActionExecutor pour exécuter une action uniquement sur les instances de task reactor initialisées. Comportement précédent : les actions ont été exécutées sur toutes les instances de task reactor enregistrées.

Nouvelles fonctionnalités

  • Procédures de gestion des ressources :

    • De nouveaux rappels ont été introduits pour la procédure PUBLIC.CREATE_RESOURCE() qui permet d’effectuer des opérations personnalisées pendant le déroulement de la procédure. Voir aussi Créer une ressource.

    • Nouvelle procédure PUBLIC.ENABLE_RESOURCE() qui permet d’activer la ressource désactivée. De plus, des rappels ont été ajoutés qui permettent d’effectuer des opérations personnalisées pendant le déroulement de la procédure. Voir aussi Activer la ressource.

    • Nouvelle procédure PUBLIC.DISABLE_RESOURCE() qui permet de désactiver la ressource activée. De plus, des rappels ont été ajoutés qui permettent d’effectuer des opérations personnalisées pendant le déroulement de la procédure. Voir aussi Désactiver la ressource.

    • Nouvelle procédure PUBLIC.UPDATE_RESOURCE() permettant de mettre à jour les configurations d’ingestion d’une ressource particulière. De plus, des rappels ont été ajoutés qui permettent d’effectuer des opérations personnalisées pendant le déroulement de la procédure. Voir aussi Mettre à jour la ressource.

  • com.snowflake.connectors.util.sql.SqlTools :

    • Ajout de la méthode asVarchar() qui devrait remplacer la méthode varcharArgument().

    • Ajout de la méthode asVariant() qui devrait remplacer la méthode variantArgument().

    • Méthodes varcharArgument() et variantArgument() marquées comme obsolètes et configurées pour qu’elles soient supprimées à l’avenir.

  • Autres ajouts :

    • Statut du processus d’ingestion défini comme constantes dans la classe com.snowflake.connectors.application.ingestion.process.IngestionProcessStatuses.

    • Ajout de la méthode isNotOk() à la classe com.snowflake.connectors.common.response.ConnectorResponse.

    • Ajout de la classe com.snowflake.connectors.util.snowflake.DefaultTransactionManager qui permet d’exécuter des instructions SQL dans une transaction en utilisant la méthode withTransaction().

    • Amélioration de la journalisation dans le task reactor.

Corrections de bogues

  • Correction d’un bogue qui entraînait la suppression du schéma d’instance du task reactor, une fois qu’une erreur inattendue était générée pendant la procédure CREATE_INSTANCE_OBJECTS().

Version 2.0.0 (24 mai 2024)

Version initiale