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

Benjamin Reed commented on PIG-126:
-----------------------------------

No, this is not a performance problem at all. We resolve the class once when we 
parse. There would be no perceivable performance impact.

This really is more about keeping code simple and getting rid of weird corner 
cases.

I can see how you see it as losing some simplicity, but if you are using inner 
classes there are things to be aware of anyway, such as making the inner 
classes static. It also makes problem determination a lot simpler. If you 
specify a.b.c() as a function and it is really a.b$c, some poor guy is going to 
look for a.b.c.class file and not find it. I completely agree that it is ugly 
to require the $, but it is a Java requirement and adding layers to cover up 
ugliness often results in more confusion. (Both for those looking at the code 
that implements the layer and for those sitting up on top when something goes 
wrong.)

> custom storage ( LOAD with USING) doesn't work with inner classes
> -----------------------------------------------------------------
>
>                 Key: PIG-126
>                 URL: https://issues.apache.org/jira/browse/PIG-126
>             Project: Pig
>          Issue Type: Bug
>          Components: impl
>    Affects Versions: 0.1.0
>            Reporter: Pi Song
>            Priority: Minor
>         Attachments: PIG-126-test.patch
>
>
> It might be trivial but this has held me up for quite a while.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to