[ 
https://issues.apache.org/jira/browse/PARQUET-140?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14977447#comment-14977447
 ] 

Mark Grey commented on PARQUET-140:
-----------------------------------

I am wondering could address the converse case as well? (I have a SpecificData 
class on the classpath but want to coerce to GenericData.Record instances 
everywhere possible, including nested records.)



> Allow clients to control the GenericData object that is used to read Avro 
> records
> ---------------------------------------------------------------------------------
>
>                 Key: PARQUET-140
>                 URL: https://issues.apache.org/jira/browse/PARQUET-140
>             Project: Parquet
>          Issue Type: Improvement
>          Components: parquet-mr
>            Reporter: Josh Wills
>            Assignee: Josh Wills
>             Fix For: 1.6.0
>
>
> Right now, Parquet always uses the default SpecificData instance (retrieved 
> by SpecificData.get()) to lookup the schemas for SpecificRecord subclasses. 
> Unfortunately, if the definition of the SpecificRecord subclass is not 
> available to the classloader used in SpecificData.get(), we will fail to find 
> the definition of the SpecificRecord subclass and will fall back to returning 
> a GenericRecord, which will cause a ClassCastException in any client code 
> that is expecting an instance of the SpecificRecord subclass.
> We can fix this limitation by allowing the client code to specify how to 
> construct a custom instance of SpecificData (or any other subclass of 
> GenericData) for Parquet to use, including instances of SpecificData that use 
> alternative classloaders.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to