SpecificDatumReader should allow users to specify the ClassLoader used.
-----------------------------------------------------------------------

                 Key: AVRO-873
                 URL: https://issues.apache.org/jira/browse/AVRO-873
             Project: Avro
          Issue Type: Improvement
          Components: java
            Reporter: Michael Armbrust


Right now SpecificData resolves classes for SpecificRecords by calling 
Class.forName(), which uses the ClassLoader used to load the SpecificData 
class. I believe this makes it impossible to deserialize into SpecificRecords 
that are loaded using a different ClassLoader.

One relatively simple way to fix this limitations involves:
* Adding a constructor to SpecificData that allows the user to specify a 
ClassLoader.
* Changing the current protected constructor of SpecificDatumReader that takes 
a SpecificData to be public instead of protected.
* Changing SpecificDatumReader to actually use the SpecificData that is passed 
into the constructor.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to