Compartir vía


Solución de problemas de Databricks Connect para Scala

Nota

En este artículo se describe Databricks Connect para Databricks Runtime 13.3 LTS y versiones posteriores.

En este artículo se proporciona información de solución de problemas para Databricks Connect para Scala. Databricks Connect permite conectar IDEs populares, servidores de notebooks y aplicaciones personalizadas a clústeres de Azure Databricks. Consulte ¿Qué es Databricks Connect?. Para obtener la versión de Python de este artículo, consulte Solución de problemas de Databricks Connect para Python.

Error: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, Resolución DNS con errores o Recibido encabezado http2 con estado 500

problema: al intentar ejecutar código con Databricks Connect, se obtiene un mensaje de error que contiene cadenas como StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedo Received http2 header with status: 500.

Causa: Databricks Connect no puede acceder al clúster.

Soluciones:

  • Asegúrese de que el nombre de la instancia del área de trabajo sea correcto. Si usa variables de entorno, compruebe que la variable de entorno relacionada está disponible y correcta en la máquina de desarrollo local.
  • Asegúrese de que el identificador del clúster sea correcto. Si usa variables de entorno, compruebe que la variable de entorno relacionada está disponible y correcta en la máquina de desarrollo local.
  • Compruebe que el clúster tiene la versión de clúster personalizada correcta compatible con Databricks Connect.

La sintaxis de nombre de archivo, nombre de directorio o etiqueta de volumen es incorrecta en Windows

Problema: Estás usando Databricks Connect en Windows y ves:

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

Causa: Databricks Connect se instaló en un directorio con un espacio en la ruta de acceso.

Solución: puede solucionarlo instalando en una ruta de acceso de directorio sin espacios o configurando la ruta de acceso mediante el formato de nombre corto.

Error: No se pudo inicializar MemoryUtil

Problema: al intentar compilar un DatabricksSession, devuelve un error Failed to initialize MemoryUtil.

Causa: Apache Arrow es una dependencia del cliente de Databricks Connect y está intentando acceder a un método java privado mediante reflexión, que está bloqueado de forma predeterminada en Java 17 debido a consideraciones de seguridad.

Solución:

Establezca el siguiente campo JVM antes de la inicialización de JVM:

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

Para obtener más información, consulte Compatibilidad de Java de Apache Arrow.

Sugerencia

Para establecer las opciones de Java en IntelliJ, consulte la configuración de ejecución/depuración de IntelliJ indicada en .