Problemen met Databricks Connect voor Scala oplossen

Notitie

Dit artikel bevat informatie over Databricks Connect voor Databricks Runtime 13.3 LTS en hoger.

Dit artikel bevat informatie over probleemoplossing voor Databricks Connect voor Scala. Met Databricks Connect kunt u populaire IDE's, notebookservers en aangepaste toepassingen verbinden met Azure Databricks clusters. Zie Databricks Connect. Zie Troubleshooting Databricks Connect voor Python voor de Python versie van dit artikel.

Fout: StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS-omzetting is mislukt of ontvangen http2-header met status 500

probleem: wanneer u code probeert uit te voeren met Databricks Connect, krijgt u een foutbericht met tekenreeksen zoals StatusCode.UNAVAILABLE, StatusCode.UNKNOWN, DNS resolution failedof Received http2 header with status: 500.

Oorzaak: Databricks Connect kan uw cluster niet bereiken.

Oplossingen:

  • Controleer of de naam van uw werkruimte-instantie correct is. Als u omgevingsvariabelen gebruikt, controleert u of de gerelateerde omgevingsvariabele beschikbaar is en juist is op uw lokale ontwikkelcomputer.
  • Controleer of de cluster-id juist is. Als u omgevingsvariabelen gebruikt, controleert u of de gerelateerde omgevingsvariabele beschikbaar is en juist is op uw lokale ontwikkelcomputer.
  • Controleer of uw cluster de juiste aangepaste clusterversie heeft die compatibel is met Databricks Connect.

De syntaxis van de bestandsnaam, mapnaam of volumelabel is onjuist op Windows

Issue: U gebruikt Databricks Connect op Windows en zie:

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

Oorzaak: Databricks Connect is geïnstalleerd in een map met een spatie in uw bestandspad.

Oplossing: u kunt dit omzeilen door dit te installeren in een mappad zonder spaties of door het pad te configureren met behulp van het korte naamformulier.

Fout: Kan MemoryUtil niet initialiseren

probleem: wanneer u een DatabricksSessionprobeert te maken, wordt er een fout geretourneerd Failed to initialize MemoryUtil.

Cause: Apache Arrow is een afhankelijkheid van de Databricks Connect-client en probeert toegang te krijgen tot een privé-Java methode met behulp van weerspiegeling, die standaard wordt geblokkeerd in Java 17 vanwege beveiligingsoverwegingen.

Solution:

Stel het volgende JVM-veld in vóór de initialisatie van JVM:

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

Zie Apache Arrow Java Compatibility voor meer informatie.

Hint

Zie IntelliJ Run/debug configuration om Java-opties in te stellen.