Yep, you are right, the pom is not generated, but checked in
statically; looks like it's out of date. One more reason to mavenize
Pig.. can you open a Jira for this? We'll fix.

D

On Mon, Jun 11, 2012 at 10:15 AM, Matthew Hayes <[email protected]> wrote:
> What I mean is: are the versions in the pom for pig 0.10.0 inconsistent with 
> the versions specified in the ivy file used to build pig?  To be clear, I am 
> building a separate project, and I am getting pig and its dependencies using 
> ivy.
>
> Looking in ivy.xml in the pig 0.10.0 release:
>
>     <dependency org="org.apache.avro" name="avro" rev="${avro.version}"
>       conf="compile->default;checkstyle->master"/>
>
> ...
>
>     <dependency org="org.codehaus.jackson" name="jackson-mapper-asl" 
> rev="${jackson.version}"
>       conf="compile->master"/>
>     <dependency org="org.codehaus.jackson" name="jackson-core-asl" 
> rev="${jackson.version}"
>       conf="compile->master"/>
>
> Where avro.version is avro.version=1.5.3 and jackson.version=1.7.3.
>
> However, in the pom.xml for pig 0.10.0:
>
>       <groupId>org.apache.hadoop</groupId>
>       <artifactId>avro</artifactId>
>       <version>1.3.2</version>
>
> And when I look up the pom for org.apache.hadoop's avro 1.3.2 in the central 
> repository, I see a version of jackson inconsistent with what pig was 
> compiled with:
>
>     <dependency>
>       <groupId>org.codehaus.jackson</groupId>
>       <artifactId>jackson-mapper-asl</artifactId>
>       <version>1.4.2</version>
>       <scope>compile</scope>
>     </dependency>
>
> It's 1.4.2, not 1.7.3.
>
> Am I doing something wrong here?  Below is my ivy.xml.  It's the same as what 
> I used for 0.9.0 but I changed the pig version to 0.10.0.
>
> <ivy-module version="2.0">
>     <info organisation="datafu" module="datafu"/>
>     <dependencies>
>         <dependency org="org.apache.pig" name="pig" rev="0.10.0"/>
>         <dependency org="it.unimi.dsi" name="fastutil" rev="6.3"/>
>         <dependency org="joda-time" name="joda-time" rev="1.6"/>
>         <dependency org="org.apache.commons" name="commons-math" rev="2.1"/>
>         <dependency org="commons-io" name="commons-io" rev="1.4"/>
>         <dependency org="org.apache.hadoop" name="hadoop-core" rev="0.20.2"/>
>         <dependency org="org.testng" name="testng" rev="6.2"/>
>         <dependency org="com.google.guava" name="guava" rev="r06" />
>
>         <!-- needed for pigunit to work -->
>         <dependency org="log4j" name="log4j" rev="1.2.14" />
>         <dependency org="jline" name="jline" rev="0.9.94" />
>         <dependency org="org.antlr" name="antlr" rev="3.2" />
>     </dependencies>
> </ivy-module>
>
> Thanks,
> Matt
> ________________________________________
> From: Dmitriy Ryaboy [[email protected]]
> Sent: Sunday, June 10, 2012 5:05 PM
> To: [email protected]
> Subject: Re: NoClassDefFoundError after upgrading to pig 0.10.0 from 0.9.0
>
> I am not sure what you mean -- ivy pulls down 1.4.2 but pig builds from 
> 1.7.3? Pig gets its jars from ivy, so it must be building from whatever ivy 
> pulls down. Sounds like there is some packaging problem, but I am not sure 
> how to interpret what you said.
>
> On Jun 8, 2012, at 12:07 PM, Matthew Hayes <[email protected]> wrote:
>
>> I'm using ivy to download dependencies for pig, but after updating the 
>> version to 0.10.0 I am getting errors in my unit tests:
>>
>>   [testng] java.lang.NoClassDefFoundError: 
>> org/codehaus/jackson/map/util/LRUMap
>>   [testng] at 
>> org.apache.pig.builtin.JsonMetadata.<init>(JsonMetadata.java:75)
>>   [testng] at 
>> org.apache.pig.builtin.PigStorage.getSchema(PigStorage.java:466)
>>   [testng] at 
>> org.apache.pig.newplan.logical.relational.LOLoad.getSchemaFromMetaData(LOLoad.java:151)
>>   [testng] at 
>> org.apache.pig.newplan.logical.relational.LOLoad.getSchema(LOLoad.java:110)
>>   ...etc.
>>
>> It looks like the dependency on jackson-mapper-asl is coming from avro.  
>> Looking in jackson-mapper-asl-1.7.3.jar I see the LRUMap class.  However 
>> using ivy to pull down dependencies I get jackson-mapper-asl-1.4.2.jar, not 
>> jackson-mapper-asl-1.7.3.jar.  When I build pig 0.10.0 from source it uses 
>> 1.7.3.
>>
>> Is there an inconsistency between the avro version pig is compiled against 
>> and the avro version specified in the pom?
>>
>> Thanks,
>> Matt

Reply via email to