You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pig.apache.org by "Cheolsoo Park (JIRA)" <ji...@apache.org> on 2014/03/26 23:52:17 UTC

[jira] [Commented] (PIG-3836) Pig signature has has guava version dependency

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

Cheolsoo Park commented on PIG-3836:
------------------------------------

[~amatsukawa], thank you for the patch. But it breaks the compilation.
{code}
    [javac] /Users/cheolsoop/workspace/pig-apache/src/org/apache/pig/newplan/logical/relational/LogicalPlan.java:130: cannot find symbol
    [javac] symbol  : method murmur_32(int)
    [javac] location: class com.google.common.hash.Hashing
    [javac]         HashFunction hf = Hashing.murmur_32(0);
    [javac]                                  ^
{code}
Did you mean {{murmur3_32(int)}}? I see it in JavaDoc [here|http://docs.guava-libraries.googlecode.com/git-history/v11.0/javadoc/com/google/common/hash/Hashing.html#murmur3_32(int)].

> Pig signature has has guava version dependency
> ----------------------------------------------
>
>                 Key: PIG-3836
>                 URL: https://issues.apache.org/jira/browse/PIG-3836
>             Project: Pig
>          Issue Type: Bug
>            Reporter: Akihiro Matsukawa
>            Assignee: Akihiro Matsukawa
>         Attachments: 0001-use-murmur-hash-with-0-seed.patch
>
>
> We currently use Hashing.goodFastHash(32) to generate signatures for the logical plan. Under the hood, this is a murmur32 hash.
> Guava 11, which pig directly depends on, always seeds the hash with 0.
> http://docs.guava-libraries.googlecode.com/git-history/v11.0/javadoc/src-html/com/google/common/hash/Hashing.html#line.85
> In future versions of Guava, it is seeded by current time: http://docs.guava-libraries.googlecode.com/git-history/v14.0/javadoc/src-html/com/google/common/hash/Hashing.html#line.47
> So when future versions of guava is pulled into the classpath (which if often), we no longer get the same signature for the same logical plan. This introduces unnecessary complexity for managing the classpath.



--
This message was sent by Atlassian JIRA
(v6.2#6252)