You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@spark.apache.org by GitBox <gi...@apache.org> on 2021/02/04 14:34:18 UTC

[GitHub] [spark] jnh5y commented on pull request #31461: [SPARK-7768][CORE][SQL] Open UserDefinedType as a Developer API

jnh5y commented on pull request #31461:
URL: https://github.com/apache/spark/pull/31461#issuecomment-773355284


   Hi all, LocationTech GeoMesa is a consumer of the previously package private UDT/UDF APIs in order implement spatial data types (like Point, LineString, Polygon) and associated functions (intersects, intersection, union, convexhull, etc.).
   
   I can appreciate the nature of the API developed here, and it has made good sense for it to private while forming.  With Java 8, as a downstream consumer of the (private) API, we can do things like this: https://github.com/locationtech/geomesa/tree/main/geomesa-spark/geomesa-spark-sql/src/main/scala/org/apache/spark/sql and it works. 
   
   Folks like @metasim and myself have watched the previous UDT PRs to see if those improvements would make it.  With Java 11 and later caring about split packages, this issue is more important for these integrations.  If something isn't done to address it, projects which are using the private API to implement UDT/UDFs are sunk on Java 11:(.
   
   This last time that the change came up, Simeon or Sean noted that just opening up these classes may allow us to move integration code out of the org.apache.spark packages.  In terms of changes, if the community cannot settle on the proposed improvements in a timely fashion, I'd say that this is a great compromise.
   
   All that said, as a developer on a downstream project, I know that the integration UDTs/UDFs and the associated Catalyst optimizations will change routinely as Spark releases minor and major versions.  (We have used reflection to paper over changes that have come up in the optimizer rules over time.)
   
   I think marking this as a DeveloperApi reflects the idea that things can change.  I'd be quite happy to see this PR and other UDT improvements land in either order.  
   
   


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscribe@spark.apache.org
For additional commands, e-mail: reviews-help@spark.apache.org