Native SDK for Connectors Java – Versionshinweise

Versionshinweise für Native SDK for Connectors Java-Bibliothek.

Version 2.1.0 (8. Juli 2024)

Verhaltensänderungen

  • Neuer Ansatz für Bezeichner.

    Wichtig

    Dieser neue Ansatz kann die Verwendung von Bezeichnern in Ihrem Connector verändern. Bitte testen Sie die neuen Änderungen gründlich!

    • Das SDK erwartet nun, dass alle Bezeichner so gesendet werden, wie sie vom Benutzer angegeben wurden. Das SDK prüft selbst, ob es sich um einen zitierten Bezeichner handelt, um ihn korrekt weiter zu verarbeiten.

    • Das automatische Zitat von Bezeichnern erfolgt nur bei der Verwendung von Werten, die von Snowflake-Abfragen zurückgegeben werden.

    • Um den neuen Ansatz mit der UI zu verwenden, muss der Connector eine neue Eigenschaft in der Ansicht PUBLIC.APP_PROPERTIES mit dem Schlüssel UI_ADD_QUOTES_TO_EXISTING_QUOTED_IDENTIFIERS und dem Wert TRUE zurückgeben.

    • Geänderte com.snowflake.connectors.common.object.Identifier-Klasse:

      • Die Methoden fromWithAutoQuoting() und getName() wurden entfernt.

      • Das Konzept eines leeren Bezeichners wurde entfernt. Die Methoden empty(), isNullOrEmpty(), validateNullOrEmpty() und isEmpty() wurden entfernt.

      • Neue Methode from() hinzugefügt, die es ermöglicht, das automatische Zitieren bei der Erstellung der Instanz eines Bezeichners zu aktivieren. Die angegebene Zeichenfolge wird nicht automatisch in Anführungszeichen gesetzt, wenn es sich um einen Bezeichner ohne Anführungszeichen und mit Großbuchstaben handelt.

      • Die Methode validate() wurde in isValid() geändert.

      • Die Methode toSqlString() wurde in getValue() geändert.

      • Die Methoden getUnquotedValue(), getQuotedValue(), getVariantValue() und isUnquoted() wurden hinzugefügt.

  • Geänderte com.snowflake.connectors.common.object.ObjectName-Klasse:

    • Eigenschaften der Datenbank und des Schemas Optional gemacht.

    • Der Rückgabetyp von getDatabase() und getSchema() wurde in Optional geändert.

    • Die Methode validate() wurde in isValid() geändert.

    • Die Methode validateDoubleDot() wurde in isDoubleDot() geändert.

    • Die Methode getEscapedName() wurde in getValue() geändert.

    • Die Methoden getVariantValue() und getSchemaName() wurden hinzugefügt.

  • Geänderte com.snowflake.connectors.common.object.Reference-Klasse:

    • Das Konzept einer leeren Referenz wurde entfernt; die Methoden empty() und isEmpty() wurden entfernt.

    • Die Methode validate() wurde in isValid() geändert.

    • Die Methode referenceName() wurde in getName() geändert.

    • Die Methode value() wurde in getValue() geändert.

    • Neue com.snowflake.connectors.common.object.SchemaName-Klasse zur Darstellung des Schemas hinzugefügt; ähnliche Verhaltensweise wie die com.snowflake.connectors.common.object.ObjectName-Klasse.

    • Neue com.snowflake.connectors.common.object.InvalidSchemaNameException-Klasse hinzugefügt.

Andere Ergänzungen und Änderungen

  • Die Methode applyToAllInitializedTaskReactorInstances() in com.snowflake.connectors.taskreactor.TaskReactorInstanceActionExecutor wurde so geändert, dass eine Aktion nur bei initialisierten Task Reactor-Instanzen ausgeführt wird. Bisherige Verhaltensweise: Aktionen wurden für alle registrierten Task Reactor-Instanzen ausgeführt.

Neue Features

  • Prozeduren für das Management von Ressourcen:

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

    • Methode asVarchar() hinzugefügt, die die Methode varcharArgument() ersetzen soll.

    • Methode asVariant() hinzugefügt, die die Methode variantArgument() ersetzen soll.

    • Methoden varcharArgument() und variantArgument() als veraltet markiert und darauf eingestellt, dass sie in Zukunft entfernt werden.

  • Weitere Ergänzungen:

    • Definierter Ingestion-Status als Konstanten in der Klasse com.snowflake.connectors.application.ingestion.process.IngestionProcessStatuses.

    • Methode isNotOk() zur Klasse com.snowflake.connectors.common.response.ConnectorResponse hinzugefügt.

    • Klasse com.snowflake.connectors.util.snowflake.DefaultTransactionManager hinzugefügt, die die Ausführung von SQL-Anweisungen innerhalb einer Transaktion mit der Methode withTransaction() ermöglicht.

    • Verbesserte Protokollierung im Task Reactor.

Fehlerkorrekturen

  • Korrektur eines Fehlers, der dazu führte, dass das Schema der Task Reactor-Instanz entfernt wurde, sobald ein unerwarteter Fehler während der Prozedur CREATE_INSTANCE_OBJECTS() auftrat.

Version 2.0.0 (24. Mai 2024)

Erstveröffentlichung.