Description
Now `StaticInvoke` receives Any as a object and StaticInvoke can be serialized but sometimes the object passed is not serializable.
For example, following code raises Exception because RowEncoder#extractorsFor invoked indirectly makes `StaticInvoke`.
case class TimestampContainer(timestamp: java.sql.Timestamp) val rdd = sc.parallelize(1 to 2).map(_ => TimestampContainer(System.currentTimeMillis)) val df = rdd.toDF val ds = df.as[TimestampContainer] val rdd2 = ds.rdd <----------------- invokes extractorsFor indirectory