[
https://issues.apache.org/jira/browse/PIG-3297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Niels Basjes updated PIG-3297:
------------------------------
Status: Patch Available (was: Open)
The fix for this bug is very simple.
In order to have a unit test that actually fails without this fix we create a
dependency with upgrading the dependency with avro to version 1.7.4
I leave it to the committers to decide to "just do the fix" or to "do the fix,
upgrade to Avro, and add the unit test".
For this reason the fix and the unit test are placed in separate files.
> Avro files with stringType set to String cannot be read by the AvroStorage
> LoadFunc
> -----------------------------------------------------------------------------------
>
> Key: PIG-3297
> URL: https://issues.apache.org/jira/browse/PIG-3297
> Project: Pig
> Issue Type: Bug
> Components: piggybank
> Affects Versions: 0.11.1
> Reporter: Niels Basjes
> Attachments: PIG-3297-1.patch, PIG-3297-v2-20130521-The-fix.patch,
> PIG-3297-v2-20130521-Unittest.patch, test_record.avro
>
>
> When an Avro file is created there exists the option to set the "String Type"
> to a different class than the default Utf8.
> A very common situation is that the "String Type" is set to the default
> String class.
> When trying to read such an Avro file in Pig using the AvroStorage LoadFunc
> from the included piggybank this gives the following Exception:
> Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to
> org.apache.avro.util.Utf8
> at
> org.apache.pig.piggybank.storage.avro.PigAvroDatumReader.readString(PigAvroDatumReader.java:154)
> at
> org.apache.avro.generic.GenericDatumReader.read(GenericDatumReader.java:150)
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira