共用方式為


針對適用於 Scala 的 Databricks Connect 進行疑難解答

注意

本文涵蓋適用於 Databricks Runtime 13.3 LTS 以上版本的 Databricks Connect。

本文提供適用於 Scala 的 Databricks Connect 疑難解答資訊。 Databricks Connect 可讓您將熱門的 IDE、Notebook 伺服器和自定義應用程式連線到 Azure Databricks 叢集。 請參閱 什麼是 Databricks Connect?。 如需本文的 Python 版本,請參閱 Databricks Connect 的 Python 疑難排解

錯誤:StatusCode.UNAVAILABLE、StatusCode.UNKNOWN、DNS 解析失敗,或狀態為 500 的 Received HTTP2 標頭

問題:當您嘗試使用 Databricks Connect 執行程式代碼時,會收到包含 StatusCode.UNAVAILABLEStatusCode.UNKNOWNDNS resolution failedReceived http2 header with status: 500等字串的錯誤訊息。

原因:Databricks Connect 無法連線到您的叢集。

解決方案:

  • 請檢查以確定您的工作區實例名稱正確無誤。 如果您使用環境變數,請檢查以確定本機開發計算機上有可用的相關環境變數並正確無誤。
  • 請檢查以確定您的叢集標識碼正確無誤。 如果您使用環境變數,請檢查以確定本機開發計算機上有可用的相關環境變數並正確無誤。
  • 請檢查以確定您的叢集具有與 Databricks Connect 相容的正確自定義叢集版本。

Windows 上的檔名、目錄名稱或磁碟區標籤法不正確

問題:您在 Windows 上使用 Databricks Connect,請參閱:

The filename, directory name, or volume label syntax is incorrect.

原因:Databricks Connect 已安裝到路徑中包含 空格的目錄,

解決方案:您可以藉由安裝至不含空格的目錄路徑,或使用 簡短名稱格式設定路徑,來解決此問題。

錯誤:無法初始化 MemoryUtil

問題:當您嘗試建置 DatabricksSession時,它會傳回錯誤 Failed to initialize MemoryUtil

原因:Apache Arrow 是 Databricks Connect 用戶端的相依性,而且它正嘗試使用反映來存取私人 Java 方法,這在 Java 17 中預設會因為安全性考慮而遭到封鎖。

解決方案

在 JVM 初始化之前設定下列 JVM 欄位:

--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED

如需詳細資訊,請參閱 Apache Arrow Java 相容性

小提示

若要在 IntelliJ 中設定 Java 選項,請參閱 IntelliJ 執行/偵錯組態。