This is less of a question and more of a PSA. It looks like there is some sort of binary incompatible change in the scala standard library class `scala.collection.immutable.::` between point releases of scala 2.11. CaseClassTypeInfo generated by the type information macro will fail to deserialize in user code with parent first class loading if the application is not compiled with 2.11.12. The following will work with Child First Class Loading but fail with Parent First.
case class CustomClass(a: Int, b: Float) class CustomMapFunction[T >: Null : TypeInformation] extends MapFunction[String, T] { override def map(value: String) = { val typeInfo = implicitly[TypeInformation[T]] // custom deserialization here null } } env .fromCollection(Iterator[String]("")) .map(new CustomMapFunction[CustomClass]) .print() [cid:image001.png@01D38AC3.21940180]<http://www.mediamath.com/> Seth Wiesman | Software Engineer, Data 4 World Trade Center, 46th Floor, New York, NY 10007