Update the sourceCatalogId field when the schema is updated (#12505)
* Set SourceCatalogId during connectionUpdate operation * Return catalogId when get a connection * Fix db operation of standardSync.sourceCatalogId - value is not set correctly during update operation - value is not read * UI modification to set the sourceCatalogId * remove sourceCatalogId from diff computation Co-authored-by: alafanechere <augustin.lafanechere@gmail.com>
This commit is contained in:
@@ -3218,6 +3218,9 @@ components:
|
||||
$ref: "#/components/schemas/ConnectionStatus"
|
||||
resourceRequirements:
|
||||
$ref: "#/components/schemas/ResourceRequirements"
|
||||
sourceCatalogId:
|
||||
type: string
|
||||
format: uuid
|
||||
WebBackendConnectionUpdate:
|
||||
type: object
|
||||
required:
|
||||
@@ -3258,6 +3261,9 @@ components:
|
||||
type: array
|
||||
items:
|
||||
$ref: "#/components/schemas/WebBackendOperationCreateOrUpdate"
|
||||
sourceCatalogId:
|
||||
type: string
|
||||
format: uuid
|
||||
ConnectionRead:
|
||||
type: object
|
||||
required:
|
||||
@@ -3298,6 +3304,9 @@ components:
|
||||
$ref: "#/components/schemas/ConnectionStatus"
|
||||
resourceRequirements:
|
||||
$ref: "#/components/schemas/ResourceRequirements"
|
||||
sourceCatalogId:
|
||||
type: string
|
||||
format: uuid
|
||||
ConnectionSearch:
|
||||
type: object
|
||||
properties:
|
||||
@@ -4363,6 +4372,9 @@ components:
|
||||
type: boolean
|
||||
resourceRequirements:
|
||||
$ref: "#/components/schemas/ResourceRequirements"
|
||||
catalogId:
|
||||
type: string
|
||||
format: uuid
|
||||
WebBackendConnectionReadList:
|
||||
type: object
|
||||
required:
|
||||
|
||||
@@ -1093,6 +1093,7 @@ public class DatabaseConfigPersistence implements ConfigPersistence {
|
||||
.set(CONNECTION.MANUAL, standardSync.getManual())
|
||||
.set(CONNECTION.RESOURCE_REQUIREMENTS, JSONB.valueOf(Jsons.serialize(standardSync.getResourceRequirements())))
|
||||
.set(CONNECTION.UPDATED_AT, timestamp)
|
||||
.set(CONNECTION.SOURCE_CATALOG_ID, standardSync.getSourceCatalogId())
|
||||
.where(CONNECTION.ID.eq(standardSync.getConnectionId()))
|
||||
.execute();
|
||||
|
||||
|
||||
@@ -56,7 +56,8 @@ public class DbConverter {
|
||||
.withSchedule(Jsons.deserialize(record.get(CONNECTION.SCHEDULE).data(), Schedule.class))
|
||||
.withManual(record.get(CONNECTION.MANUAL))
|
||||
.withOperationIds(connectionOperationId)
|
||||
.withResourceRequirements(Jsons.deserialize(record.get(CONNECTION.RESOURCE_REQUIREMENTS).data(), ResourceRequirements.class));
|
||||
.withResourceRequirements(Jsons.deserialize(record.get(CONNECTION.RESOURCE_REQUIREMENTS).data(), ResourceRequirements.class))
|
||||
.withSourceCatalogId(record.get(CONNECTION.SOURCE_CATALOG_ID));
|
||||
}
|
||||
|
||||
public static StandardWorkspace buildStandardWorkspace(final Record record) {
|
||||
|
||||
@@ -85,7 +85,8 @@ public class ApiPojoConverters {
|
||||
.withPrefix(update.getPrefix())
|
||||
.withOperationIds(update.getOperationIds())
|
||||
.withCatalog(CatalogConverter.toProtocol(update.getSyncCatalog()))
|
||||
.withStatus(toPersistenceStatus(update.getStatus()));
|
||||
.withStatus(toPersistenceStatus(update.getStatus()))
|
||||
.withSourceCatalogId(update.getSourceCatalogId());
|
||||
|
||||
if (update.getName() != null) {
|
||||
newConnection.withName(update.getName());
|
||||
|
||||
@@ -120,6 +120,7 @@ public class WebBackendConnectionsHandler {
|
||||
final Predicate<JobRead> hasRunningJob = (JobRead job) -> !TERMINAL_STATUSES.contains(job.getStatus());
|
||||
WebBackendConnectionRead.setIsSyncing(syncJobReadList.getJobs().stream().map(JobWithAttemptsRead::getJob).anyMatch(hasRunningJob));
|
||||
setLatestSyncJobProperties(WebBackendConnectionRead, syncJobReadList);
|
||||
WebBackendConnectionRead.setCatalogId(connectionRead.getSourceCatalogId());
|
||||
return WebBackendConnectionRead;
|
||||
}
|
||||
|
||||
@@ -206,6 +207,7 @@ public class WebBackendConnectionsHandler {
|
||||
final AirbyteCatalog discovered = discoverSchema.getCatalog();
|
||||
final AirbyteCatalog combined = updateSchemaWithDiscovery(original, discovered);
|
||||
|
||||
connection.setSourceCatalogId(discoverSchema.getCatalogId());
|
||||
connection.setSyncCatalog(combined);
|
||||
}
|
||||
|
||||
@@ -399,6 +401,7 @@ public class WebBackendConnectionsHandler {
|
||||
connectionUpdate.schedule(webBackendConnectionUpdate.getSchedule());
|
||||
connectionUpdate.status(webBackendConnectionUpdate.getStatus());
|
||||
connectionUpdate.resourceRequirements(webBackendConnectionUpdate.getResourceRequirements());
|
||||
connectionUpdate.sourceCatalogId(webBackendConnectionUpdate.getSourceCatalogId());
|
||||
|
||||
return connectionUpdate;
|
||||
}
|
||||
|
||||
@@ -321,6 +321,8 @@ class ConnectionsHandlerTest {
|
||||
catalog.getStreams().get(0).getStream().setName("azkaban_users");
|
||||
catalog.getStreams().get(0).getConfig().setAliasName("azkaban_users");
|
||||
|
||||
final UUID newSourceCatalogId = UUID.randomUUID();
|
||||
|
||||
final ConnectionUpdate connectionUpdate = new ConnectionUpdate()
|
||||
.namespaceDefinition(Enums.convertTo(standardSync.getNamespaceDefinition(), NamespaceDefinitionType.class))
|
||||
.namespaceFormat(standardSync.getNamespaceFormat())
|
||||
@@ -335,7 +337,8 @@ class ConnectionsHandlerTest {
|
||||
.cpuLimit(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS.getCpuLimit())
|
||||
.cpuRequest(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS.getCpuRequest())
|
||||
.memoryLimit(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS.getMemoryLimit())
|
||||
.memoryRequest(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS.getMemoryRequest()));
|
||||
.memoryRequest(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS.getMemoryRequest()))
|
||||
.sourceCatalogId(newSourceCatalogId);
|
||||
|
||||
final ConfiguredAirbyteCatalog configuredCatalog = ConnectionHelpers.generateBasicConfiguredAirbyteCatalog();
|
||||
configuredCatalog.getStreams().get(0).getStream().withName("azkaban_users");
|
||||
@@ -352,7 +355,8 @@ class ConnectionsHandlerTest {
|
||||
.withStatus(StandardSync.Status.INACTIVE)
|
||||
.withCatalog(configuredCatalog)
|
||||
.withManual(true)
|
||||
.withResourceRequirements(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS);
|
||||
.withResourceRequirements(ConnectionHelpers.TESTING_RESOURCE_REQUIREMENTS)
|
||||
.withSourceCatalogId(newSourceCatalogId);
|
||||
|
||||
when(configRepository.getStandardSync(standardSync.getConnectionId()))
|
||||
.thenReturn(standardSync)
|
||||
|
||||
@@ -482,7 +482,7 @@ class WebBackendConnectionsHandlerTest {
|
||||
public void testForConnectionUpdateCompleteness() {
|
||||
final Set<String> handledMethods =
|
||||
Set.of("schedule", "connectionId", "syncCatalog", "namespaceDefinition", "namespaceFormat", "prefix", "status", "operationIds",
|
||||
"resourceRequirements", "name");
|
||||
"resourceRequirements", "name", "sourceCatalogId");
|
||||
|
||||
final Set<String> methods = Arrays.stream(ConnectionUpdate.class.getMethods())
|
||||
.filter(method -> method.getReturnType() == ConnectionUpdate.class)
|
||||
@@ -506,7 +506,8 @@ class WebBackendConnectionsHandlerTest {
|
||||
.connectionId(expected.getConnectionId())
|
||||
.schedule(expected.getSchedule())
|
||||
.status(expected.getStatus())
|
||||
.syncCatalog(expected.getSyncCatalog());
|
||||
.syncCatalog(expected.getSyncCatalog())
|
||||
.sourceCatalogId(expected.getCatalogId());
|
||||
|
||||
when(connectionsHandler.getConnection(expected.getConnectionId())).thenReturn(
|
||||
new ConnectionRead().connectionId(expected.getConnectionId()));
|
||||
|
||||
@@ -56,4 +56,5 @@ export interface Connection {
|
||||
source: Source;
|
||||
destination: Destination;
|
||||
operations: Operation[];
|
||||
catalogId: string;
|
||||
}
|
||||
|
||||
@@ -57,6 +57,7 @@ type UpdateConnection = {
|
||||
schedule?: ScheduleProperties | null;
|
||||
operations?: Operation[];
|
||||
withRefreshedCatalog?: boolean;
|
||||
sourceCatalogId?: string;
|
||||
};
|
||||
|
||||
export type ListConnection = { connections: Connection[] };
|
||||
|
||||
@@ -82,6 +82,7 @@ export const ReplicationView: React.FC<ReplicationViewProps> = ({ onAfterSaveSch
|
||||
connectionId,
|
||||
status: initialConnection.status || "",
|
||||
withRefreshedCatalog: activeUpdatingSchemaMode,
|
||||
sourceCatalogId: connection?.catalogId,
|
||||
});
|
||||
|
||||
setSaved(true);
|
||||
|
||||
@@ -68,7 +68,8 @@ public class ConnectionHelper {
|
||||
.withPrefix(update.getPrefix())
|
||||
.withOperationIds(update.getOperationIds())
|
||||
.withCatalog(update.getCatalog())
|
||||
.withStatus(update.getStatus());
|
||||
.withStatus(update.getStatus())
|
||||
.withSourceCatalogId(update.getSourceCatalogId());
|
||||
|
||||
// update name
|
||||
if (update.getName() != null) {
|
||||
|
||||
@@ -419,6 +419,9 @@ font-style: italic;
|
||||
<div class="example-data-content-type">Content-Type: application/json</div>
|
||||
<pre class="example"><code>{
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -429,7 +432,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -466,8 +468,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}</code></pre>
|
||||
|
||||
<h3 class="field-label">Produces</h3>
|
||||
@@ -571,6 +572,9 @@ font-style: italic;
|
||||
<div class="example-data-content-type">Content-Type: application/json</div>
|
||||
<pre class="example"><code>{
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -581,7 +585,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -618,8 +621,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}</code></pre>
|
||||
|
||||
<h3 class="field-label">Produces</h3>
|
||||
@@ -737,6 +739,9 @@ font-style: italic;
|
||||
<pre class="example"><code>{
|
||||
"connections" : [ {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -747,7 +752,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -784,10 +788,12 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}, {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -798,7 +804,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -835,8 +840,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
} ]
|
||||
}</code></pre>
|
||||
|
||||
@@ -897,6 +901,9 @@ font-style: italic;
|
||||
<pre class="example"><code>{
|
||||
"connections" : [ {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -907,7 +914,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -944,10 +950,12 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}, {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -958,7 +966,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -995,8 +1002,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
} ]
|
||||
}</code></pre>
|
||||
|
||||
@@ -1219,6 +1225,9 @@ font-style: italic;
|
||||
<pre class="example"><code>{
|
||||
"connections" : [ {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -1229,7 +1238,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -1266,10 +1274,12 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}, {
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -1280,7 +1290,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -1317,8 +1326,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
} ]
|
||||
}</code></pre>
|
||||
|
||||
@@ -1537,6 +1545,9 @@ font-style: italic;
|
||||
<div class="example-data-content-type">Content-Type: application/json</div>
|
||||
<pre class="example"><code>{
|
||||
"sourceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"sourceCatalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"prefix" : "prefix",
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"resourceRequirements" : {
|
||||
"cpu_limit" : "cpu_limit",
|
||||
"memory_request" : "memory_request",
|
||||
@@ -1547,7 +1558,6 @@ font-style: italic;
|
||||
"units" : 0,
|
||||
"timeUnit" : "minutes"
|
||||
},
|
||||
"prefix" : "prefix",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -1584,8 +1594,7 @@ font-style: italic;
|
||||
},
|
||||
"connectionId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"namespaceFormat" : "${SOURCE_NAMESPACE}",
|
||||
"operationIds" : [ null, null ],
|
||||
"destinationId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
"operationIds" : [ null, null ]
|
||||
}</code></pre>
|
||||
|
||||
<h3 class="field-label">Produces</h3>
|
||||
@@ -7884,6 +7893,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8041,6 +8051,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8262,6 +8273,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8366,6 +8378,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8528,6 +8541,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8632,6 +8646,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8794,6 +8809,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -8898,6 +8914,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -9056,6 +9073,7 @@ font-style: italic;
|
||||
},
|
||||
"workspaceId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91"
|
||||
} ],
|
||||
"catalogId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91",
|
||||
"name" : "name",
|
||||
"syncCatalog" : {
|
||||
"streams" : [ {
|
||||
@@ -10100,6 +10118,7 @@ font-style: italic;
|
||||
<div class="param">schedule (optional)</div><div class="param-desc"><span class="param-type"><a href="#ConnectionSchedule">ConnectionSchedule</a></span> </div>
|
||||
<div class="param">status </div><div class="param-desc"><span class="param-type"><a href="#ConnectionStatus">ConnectionStatus</a></span> </div>
|
||||
<div class="param">resourceRequirements (optional)</div><div class="param-desc"><span class="param-type"><a href="#ResourceRequirements">ResourceRequirements</a></span> </div>
|
||||
<div class="param">sourceCatalogId (optional)</div><div class="param-desc"><span class="param-type"><a href="#UUID">UUID</a></span> format: uuid</div>
|
||||
</div> <!-- field-items -->
|
||||
</div>
|
||||
<div class="model">
|
||||
@@ -10164,6 +10183,7 @@ font-style: italic;
|
||||
<div class="param">schedule (optional)</div><div class="param-desc"><span class="param-type"><a href="#ConnectionSchedule">ConnectionSchedule</a></span> </div>
|
||||
<div class="param">status </div><div class="param-desc"><span class="param-type"><a href="#ConnectionStatus">ConnectionStatus</a></span> </div>
|
||||
<div class="param">resourceRequirements (optional)</div><div class="param-desc"><span class="param-type"><a href="#ResourceRequirements">ResourceRequirements</a></span> </div>
|
||||
<div class="param">sourceCatalogId (optional)</div><div class="param-desc"><span class="param-type"><a href="#UUID">UUID</a></span> format: uuid</div>
|
||||
</div> <!-- field-items -->
|
||||
</div>
|
||||
<div class="model">
|
||||
@@ -11038,6 +11058,7 @@ if oauth parameters were contained inside the top level, rootObject=[] If they w
|
||||
<div class="param">latestSyncJobStatus (optional)</div><div class="param-desc"><span class="param-type"><a href="#JobStatus">JobStatus</a></span> </div>
|
||||
<div class="param">isSyncing </div><div class="param-desc"><span class="param-type"><a href="#boolean">Boolean</a></span> </div>
|
||||
<div class="param">resourceRequirements (optional)</div><div class="param-desc"><span class="param-type"><a href="#ResourceRequirements">ResourceRequirements</a></span> </div>
|
||||
<div class="param">catalogId (optional)</div><div class="param-desc"><span class="param-type"><a href="#UUID">UUID</a></span> format: uuid</div>
|
||||
</div> <!-- field-items -->
|
||||
</div>
|
||||
<div class="model">
|
||||
@@ -11088,6 +11109,7 @@ if oauth parameters were contained inside the top level, rootObject=[] If they w
|
||||
<div class="param">resourceRequirements (optional)</div><div class="param-desc"><span class="param-type"><a href="#ResourceRequirements">ResourceRequirements</a></span> </div>
|
||||
<div class="param">withRefreshedCatalog (optional)</div><div class="param-desc"><span class="param-type"><a href="#boolean">Boolean</a></span> </div>
|
||||
<div class="param">operations (optional)</div><div class="param-desc"><span class="param-type"><a href="#WebBackendOperationCreateOrUpdate">array[WebBackendOperationCreateOrUpdate]</a></span> </div>
|
||||
<div class="param">sourceCatalogId (optional)</div><div class="param-desc"><span class="param-type"><a href="#UUID">UUID</a></span> format: uuid</div>
|
||||
</div> <!-- field-items -->
|
||||
</div>
|
||||
<div class="model">
|
||||
|
||||
@@ -552,7 +552,7 @@ class Connection(BaseResource):
|
||||
return self._search_fn(self.api_instance, self.search_payload, _check_return_type=False)
|
||||
|
||||
def _get_comparable_configuration(self) -> dict:
|
||||
keys_to_filter_out = ["connectionId", "operationIds"]
|
||||
keys_to_filter_out = ["connectionId", "operationIds", "sourceCatalogId"]
|
||||
comparable_configuration = super()._get_comparable_configuration()
|
||||
return {k: v for k, v in comparable_configuration.items() if k not in keys_to_filter_out}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user