Apache Spark jobbet Miss lyckas medFailed to parse byte string

Problem

Spark-Submit-jobben fungerar inte med ett Failed to parse byte string: -1 fel meddelande.

java.util.concurrent.ExecutionException: java.lang.NumberFormatException: Size must be specified as bytes (b), kibibytes (k), mebibytes (m), gibibytes (g), tebibytes (t), or pebibytes(p). E.g. 50b, 100k, or 250m.
Failed to parse byte string: -1
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:206)
at org.apache.spark.sql.execution.exchange.BroadcastExchangeExec.doExecuteBroadcast(BroadcastExchangeExec.scala:182)
... 108 more
Caused by: java.lang.NumberFormatException: Size must be specified as bytes (b), kibibytes (k), mebibytes (m), gibibytes (g), tebibytes (t), or pebibytes(p). E.g. 50b, 100k, or 250m.
Failed to parse byte string: -1

Orsak

Värdet för spark.driver.maxResultSize program egenskapen är negativt.

Lösning

Värdet som tilldelas spark.driver.maxResultSize definierar den maximala storleken (i byte) för de serialiserade resultaten för varje spark-åtgärd. Du kan tilldela ett positivt värde till spark.driver.maxResultSize egenskapen för att definiera en angiven storlek. Du kan också tilldela värdet 0 om du vill definiera en obegränsad maximal storlek. Du kan inte tilldela ett negativt värde till den här egenskapen.

Om den totala storleken för ett jobb överskrider spark.driver.maxResultSize värdet avbryts jobbet.

Du bör vara försiktig när du ställer in ett högt högt (eller obegränsat) värde för spark.driver.maxResultSize . En hög gräns kan orsaka minnes fel i driv rutinen om spark.driver.memory egenskapen inte är tillräckligt hög.

Se konfigurations program egenskaper för Spark för mer information.