in Sources/SparkConnect/SparkConnectClient.swift [91:106]
func connect(_ sessionID: String) async throws -> AnalyzePlanResponse {
try await withGPRC { client in
// To prevent server-side `INVALID_HANDLE.FORMAT (SQLSTATE: HY000)` exception.
if UUID(uuidString: sessionID) == nil {
throw SparkConnectError.InvalidSessionIDException
}
self.sessionID = sessionID
let service = SparkConnectService.Client(wrapping: client)
let request = analyze(self.sessionID!, {
return OneOf_Analyze.sparkVersion(AnalyzePlanRequest.SparkVersion())
})
let response = try await service.analyzePlan(request)
return response
}
}