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

Mridul Muralidharan commented on PIG-1745:
------------------------------------------


@Daniel Dai: By "removed as an option", I meant whether the ability to cast to 
arbitrary schema was removed or not. Olga clarified that.

@Olga : Glad to see there is a way to achieve the functionality I was looking 
for.
But passing classname as a parameter seems fragile behavior if the intention is 
to get an instance of LoadCaster.
How would we handle cases for other loaders which require similar functionality 
(just as with BinStorage, it is not practical to assume all loaders can 
implement LoadCaster 'well') ? Mirror similar idiom ?
Exposing implementation dependent constructor arguments for things like this is 
not extensible in long run if the deficiency is due to pig interface 
requirements. A more general way to plug it in would be better (and more easily 
verifiable by pig).


> Disable converting bytes loading from BinStorage
> ------------------------------------------------
>
>                 Key: PIG-1745
>                 URL: https://issues.apache.org/jira/browse/PIG-1745
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.8.0
>            Reporter: Daniel Dai
>            Assignee: Daniel Dai
>             Fix For: 0.9.0
>
>         Attachments: PIG-1745-1.patch, PIG-1745-2.patch, PIG-1745-3.patch
>
>
> If we load bytes from BinStorage, we don't actually know how we get these 
> bytes originally, and we will not have a way to cast those bytes. Ideally we 
> shall encode caster into BinStorage data file, but we are not there yet. 
> Currrently bytesToXXX methods for BinStorage is wrong and it results 
> unexpected errors. Eg.
> {code}
> a = load '1.txt' as (a0, a1, a2);
> store a into '1.bin' as BinStorage();
> a = load '1.bin' using BinStorage as (a0, a1, a2);
> b = foreach a generate (long)a0;
> dump b;
> {code}
> The code will run but produce wrong data. It's less confusing if we throw an 
> exception in this case.
> Release Notes:
> Pig will throw exception in the case we want to convert bytes loading from 
> BinStorage

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

Reply via email to