Details
-
Type:
Bug
-
Status: Resolved
-
Priority:
Blocker
-
Resolution: Fixed
-
Affects Version/s: 0.2
-
Fix Version/s: None
-
Component/s: API
-
Labels:None
Description
Json deserialization in JsonServlet ignores default value defined in case class definitions.
Instead of using the default value, Jackson uses null.
Default values in following classes are ignored and substitute by null.
case class CreateInteractiveRequest( kind: Kind, proxyUser: Option[String] = None, jars: List[String] = List(), pyFiles: List[String] = List(), files: List[String] = List(), driverMemory: Option[String] = None, driverCores: Option[Int] = None, executorMemory: Option[String] = None, executorCores: Option[Int] = None, numExecutors: Option[Int] = None, archives: List[String] = List(), queue: Option[String] = None, name: Option[String] = None, conf: Map[String, String] = Map()) case class CreateBatchRequest( file: String, proxyUser: Option[String] = None, args: List[String] = List(), className: Option[String] = None, jars: List[String] = List(), pyFiles: List[String] = List(), files: List[String] = List(), driverMemory: Option[String] = None, driverCores: Option[Int] = None, executorMemory: Option[String] = None, executorCores: Option[Int] = None, numExecutors: Option[Int] = None, archives: List[String] = List(), queue: Option[String] = None, name: Option[String] = None, conf: Map[String, String] = Map())
Right now both batch and interactive modes are broken because of NullPointerException unless users specify every attribute in the create requests.
It's a known bug in the library: https://github.com/FasterXML/jackson-module-scala/issues/87