Native SDK for Connectors Java – Versionshinweise¶
Versionshinweise für Native SDK for Connectors Java-Bibliothek.
Version 2.2.0 (10. Juli 2024)¶
Allgemeine Änderungen¶
SnowSQL-Tool ersetzt durch das neue Snowflake CLI-Tool
Java-Abhängigkeiten aktualisiert
Verhaltensänderungen¶
com.snowflake.connectors.common.object
:Der von
toString
zurückgegebene Wert wurde so geändert, dass er mit dem vongetValue
in Klassen übereinstimmt:Identifier
ObjectName
Reference
SchemaName
com.snowflake.connectors.application.scheduler.SchedulerCreator
:Umbenennung der Klasse in
SchedulerManager
.
com.snowflake.connectors.taskreactor.commands.queue.CommandsQueueRepository
:Umbenennung der Klasse in
CommandsQueue
.
com.snowflake.connectors.application.integration.SchedulerTaskReactorOnIngestionScheduled
:Umbenennung der Klasse in
TaskReactorOnIngestionScheduledCallback
.Die Klasse verwendet nun
ResourceIngestionDefinition
und seine generischen Parameter.
com.snowflake.connectors.taskreactor.config.ConfigRepository
:Config-Werte werden jetzt immer als Zeichenfolgen und nicht als Varianten behandelt.
Neue Features¶
Neue
PUBLIC.RESET_CONFIGURATION()
-Prozedur, die es ermöglicht, den Status des Konfigurationsassistenten zurückzusetzen. Außerdem gibt es zusätzliche Callbacks, mit denen Sie während der Prozedur benutzerdefinierte Operationen durchführen können. Siehe auch Konfiguration zurücksetzen.Neue
PUBLIC.RECOVER_CONNECTOR_STATE(STRING)
-Prozedur, die es ermöglicht, den Zustand des Konnektors zurückzusetzen. Siehe auch Wiederherstellen des Konnektorstatus.Neue
TASK_REACTOR.REMOVE_INSTANCE(STRING)
-Prozedur, mit der Sie eine Task Reactor-Instanz entfernen können. Siehe auch Instanz entfernen.com.snowflake.connectors.application.configuration.connector.ConnectorConfigurationKey
:Neuen Schlüssel
CORTEX_WAREHOUSE
hinzugefügt.Neuen Schlüssel
CORTEX_USER_ROLE
hinzugefügt.
com.snowflake.connectors.util.time
:Neue Klassen für die JSON-Serialisierung von
LocalDate
undZoneId
hinzugefügt.
com.snowflake.connectors.common.task.TaskRepository
:Unterstützung für den Parameter
AFTER
bei der Aufgabenerstellung hinzugefügt, wenn Vorgänger von Aufgaben angegeben wurden.Unterstützung für den Parameter
USER_TASK_TIMEOUT_MS
wurde hinzugefügt.
com.snowflake.connectors.common.task.TaskProperties
:Unterstützung für Aufgabenvorgänger hinzugefügt.
Unterstützung für die Eigenschaft
USER_TASK_TIMEOUT_MS
wurde hinzugefügt.
com.snowflake.connectors.util.sql.SqlTools
:
Methode
callProcedureRaw(Session, String, String...)
hinzugefügt.Methode
callProcedureRaw(Session, String, String, String...)
hinzugefügt.
Neue Klasse
com.snowflake.connectors.taskreactor.worker.ingestion.SimpleIngestionWorker
hinzugefügt - eine einfache Worker-Implementierung zur Verwendung mit Datenaufnahme-Workloads.Neue Klasse
com.snowflake.connectors.taskreactor.worker.ingestion.SimpleIngestion
hinzugefügt - eine einfache Datenaufnahme-Darstellung, die vonIngestionWorker
verwendet werden kann.Neue Klasse
com.snowflake.connectors.taskreactor.worker.ingestion.SimpleIngestionWorkItem
hinzugefügt - eine einfache Workitem-Implementierung für Datenaufnahmearbeiten.
Fehlerkorrekturen¶
com.snowflake.connectors.common.task.TaskRepository
:Die Prüfung der Bedingung für die erfolgreiche Erstellung einer Aufgabe in
create(TaskDefinition, boolean, boolean)
wurde korrigiert.
com.snowflake.connectors.util.variant.VarianMapper
:Die Behandlung von Zeitstempeln in Varianten wurde korrigiert.
Die Standard-Eingabevalidierer in den Handlern für die Konfigurationsprozesse der Konnektoren wurden korrigiert.
DataFrame#first
wurde aus den meistenSELECT
-Abfragen entfernt, wodurch Probleme bei der Verwendung einiger Prozeduren in Aufgaben behoben wurden.Die Gewährung von
USAGE
für das SchemaSTATE
an die AnwendungsrolleADMIN
wurde entfernt.Die fehlende Spalte
UPDATED_AT
wurde der Task Reactor-Konfigurationstabelle hinzugefügt.
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üsselUI_ADD_QUOTES_TO_EXISTING_QUOTED_IDENTIFIERS
und dem WertTRUE
zurückgeben.Geänderte
com.snowflake.connectors.common.object.Identifier
-Klasse:Die Methoden
fromWithAutoQuoting()
undgetName()
wurden entfernt.Das Konzept eines leeren Bezeichners wurde entfernt. Die Methoden
empty()
,isNullOrEmpty()
,validateNullOrEmpty()
undisEmpty()
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 inisValid()
geändert.Die Methode
toSqlString()
wurde ingetValue()
geändert.Die Methoden
getUnquotedValue()
,getQuotedValue()
,getVariantValue()
undisUnquoted()
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()
undgetSchema()
wurde inOptional
geändert.Die Methode
validate()
wurde inisValid()
geändert.Die Methode
validateDoubleDot()
wurde inisDoubleDot()
geändert.Die Methode
getEscapedName()
wurde ingetValue()
geändert.Die Methoden
getVariantValue()
undgetSchemaName()
wurden hinzugefügt.Geänderte
com.snowflake.connectors.common.object.Reference
-Klasse:
Das Konzept einer leeren Referenz wurde entfernt; die Methoden
empty()
undisEmpty()
wurden entfernt.Die Methode
validate()
wurde inisValid()
geändert.Die Methode
referenceName()
wurde ingetName()
geändert.Die Methode
value()
wurde ingetValue()
geändert.Neue
com.snowflake.connectors.common.object.SchemaName
-Klasse zur Darstellung des Schemas hinzugefügt; ähnliche Verhaltensweise wie diecom.snowflake.connectors.common.object.ObjectName
-Klasse.Neue
com.snowflake.connectors.common.object.InvalidSchemaNameException
-Klasse hinzugefügt.
Andere Ergänzungen und Änderungen¶
Die Methode
applyToAllInitializedTaskReactorInstances()
incom.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:
Einführung neuer Callbacks in die
PUBLIC.CREATE_RESOURCE()
-Prozedur, die es ermöglichen, benutzerdefinierte Operationen während der Prozedur durchzuführen. Siehe auch ../../developer-guide/native-apps/connector-sdk/flow/ingestion-management/create_resource-Ressource erstellen.Neue
PUBLIC.ENABLE_RESOURCE()
-Prozedur, mit der Sie eine deaktivierte Ressource aktivieren können. Außerdem gibt es zusätzliche Callbacks, mit denen Sie während der Prozedur benutzerdefinierte Operationen durchführen können. Siehe auch ../../developer-guide/native-apps/connector-sdk/flow/ingestion-management/enable_resource-Ressource aktivieren.Neue
PUBLIC.DISABLE_RESOURCE()
-Prozedur, mit der Sie die aktivierte Ressource deaktivieren können. Außerdem gibt es zusätzliche Callbacks, mit denen Sie während der Prozedur benutzerdefinierte Operationen durchführen können. Siehe auch ../../developer-guide/native-apps/connector-sdk/flow/ingestion-management/disable_resource-Ressource deaktivieren.Neue
PUBLIC.UPDATE_RESOURCE()
-Prozedur, mit der Sie die Ingestion-Konfigurationen einer bestimmten Ressource aktualisieren können. Außerdem gibt es zusätzliche Callbacks, mit denen Sie während der Prozedur benutzerdefinierte Operationen durchführen können. Siehe auch ../../developer-guide/native-apps/connector-sdk/flow/ingestion-management/update_resource-Ressource aktualisieren.
com.snowflake.connectors.util.sql.SqlTools
:Methode
asVarchar()
hinzugefügt, die die MethodevarcharArgument()
ersetzen soll.Methode
asVariant()
hinzugefügt, die die MethodevariantArgument()
ersetzen soll.Methoden
varcharArgument()
undvariantArgument()
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 Klassecom.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 MethodewithTransaction()
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.