Solução de problemas do Databricks Connect for Scala
Observação
Este artigo aborda o Databricks Connect para Databricks Runtime 13.3 LTS ou mais recente.
Este artigo fornece informações de solução de problemas para o Databricks Connect for Scala. O Databricks Connect permite conectar IDEs populares, servidores de notebook e aplicativos personalizados a clusters do Azure Databricks. Consulte O que é Databricks Connect?. Para a versão Python deste artigo, consulte Troubleshooting Databricks Connect for Python.
Erro: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, falha na resolução DNS ou cabeçalho http2 recebido com status 500
Problema: Quando você tenta executar código com o Databricks Connect, você recebe uma mensagem de erro que contém cadeias de caracteres como StatusCode.UNAVAILABLE
, StatusCode.UNKNOWN
, DNS resolution failed
ou Received http2 header with status: 500
.
Causa: O Databricks Connect não consegue aceder ao seu cluster.
Soluções:
- Verifique se o nome da instância do espaço de trabalho está correto. Se você usar variáveis de ambiente, verifique se a variável de ambiente relacionada está disponível e correta em sua máquina de desenvolvimento local.
- Verifique se o ID do cluster está correto. Se você usar variáveis de ambiente, verifique se a variável de ambiente relacionada está disponível e correta em sua máquina de desenvolvimento local.
- Verifique se o cluster possui a versão de cluster personalizada correta, garantindo que seja compatível com o Databricks Connect.
O nome do arquivo, nome do diretório ou sintaxe do rótulo do volume está incorreto no Windows
Problema: Você está usando o Databricks Connect no Windows e veja:
The filename, directory name, or volume label syntax is incorrect.
Cause: Databricks Connect foi instalado em um diretório com um espaço de em seu caminho.
Solution: Você pode contornar isso instalando em um caminho de diretório sem espaços ou configurando seu caminho usando o formulário de nome abreviado .
Erro: Falha ao inicializar MemoryUtil
Problema: Quando você tenta criar um DatabricksSession
, ele retorna um erro Failed to initialize MemoryUtil
.
Cause: Apache Arrow é uma dependência do cliente Databricks Connect e está tentando acessar um método Java privado usando reflexão, que por padrão é bloqueado no Java 17 devido a considerações de segurança.
Solução:
Defina o seguinte campo JVM antes da inicialização da JVM:
--add-opens=java.base/java.nio=org.apache.arrow.memory.core,ALL-UNNAMED
Para obter mais informações, consulte Apache Arrow Java Compatibility.