Rozwiązywanie problemów z programem Databricks Connect dla języka Scala
Notatka
W tym artykule opisano usługę Databricks Connect dla środowiska Databricks Runtime 13.3 LTS lub nowszego.
Ten artykuł zawiera informacje dotyczące rozwiązywania problemów z programem Databricks Connect dla języka Scala. Usługa Databricks Connect umożliwia integrację popularnych środowisk IDE, serwerów notesów oraz aplikacji niestandardowych z klastrami Azure Databricks. Zobacz Co to jest usługa Databricks Connect?. Aby zapoznać się z wersją tego artykułu w języku Python, zobacz Rozwiązywanie problemów z programem Databricks Connect dla języka Python.
Błąd: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, rozpoznawanie nazw DNS nie powiodło się lub odebrano nagłówek http2 ze statusem 500
Problem: podczas próby uruchomienia kodu za pomocą programu Databricks Connect są wyświetlane komunikaty o błędach zawierające ciągi, takie jak StatusCode.UNAVAILABLE
, StatusCode.UNKNOWN
, DNS resolution failed
lub Received http2 header with status: 500
.
Przyczyna: Databricks Connect nie może połączyć się z klastrem.
Rozwiązania:
- Upewnij się, że nazwa wystąpienia obszaru roboczego jest poprawna. Jeśli używasz zmiennych środowiskowych, sprawdź, czy powiązana zmienna środowiskowa jest dostępna i poprawna na lokalnym komputerze deweloperskim.
- Upewnij się, że identyfikator klastra jest poprawny. Jeśli używasz zmiennych środowiskowych, sprawdź, czy powiązana zmienna środowiskowa jest dostępna i poprawna na lokalnym komputerze deweloperskim.
- Upewnij się, że Twój klaster ma odpowiednią niestandardową wersję klastra, która jest zgodna z usługą Databricks Connect.
Nazwa pliku, nazwa katalogu lub składnia etykiety woluminu jest niepoprawna w systemie Windows
Problem: Używasz programu Databricks Connect w systemie Windows i widzisz:
The filename, directory name, or volume label syntax is incorrect.
Przyczyna: program Databricks Connect został zainstalowany w katalogu z miejscem w ścieżce.
Solution: możesz obejść ten problem, instalując w katalogu bez spacji lub konfigurując ścieżkę przy użyciu krótkiej formy nazwy .
Błąd: nie można zainicjować narzędzia MemoryUtil
Problem: podczas próby skompilowania DatabricksSession
zwraca błąd Failed to initialize MemoryUtil
.
Przyczyna: Apache Arrow jest zależnością klienta Databricks Connect i próbuje uzyskać dostęp do prywatnej metody Języka Java przy użyciu odbicia, która jest domyślnie zablokowana w środowisku Java 17 ze względu na zagadnienia dotyczące zabezpieczeń.
Solution:
Ustaw następujące pole JVM przed uruchomieniem maszyny JVM.
--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED
Aby uzyskać więcej informacji, zobacz sekcję zgodność języka Java z Apache Arrow.