Error in projection implementation or in typechecking when casting a member of
Bag
-----------------------------------------------------------------------------------
Key: PIG-667
URL: https://issues.apache.org/jira/browse/PIG-667
Project: Pig
Issue Type: Bug
Environment: i686 i386 GNU/Linux
Reporter: Araceli Henley
As one of its members, a bag contains "age" of type "int". When this value is
used as an argument to DIFF and cast as an int for the comparison, the
following error is thrown:
9/02/11 14:20:46 INFO mapReduceLayer.MapReduceLauncher: 50% complete
09/02/11 14:21:31 ERROR mapReduceLayer.MapReduceLauncher: Map reduce job failed
09/02/11 14:21:31 ERROR mapReduceLayer.MapReduceLauncher: Number of failed
jobs: 1
09/02/11 14:21:31 ERROR mapReduceLayer.MapReduceLauncher: Job failed!
error message for task: map
error message for task: reduce
09/02/11 14:21:31 ERROR grunt.Grunt: ERROR 1072: Out of bounds access: Request
for field number 1 exceeds tuple size of 1
Steps to reproduce
# valid use of DIFF with valid cast for bag field
TEST ErrorHandling.AggregateFunc_601
A =LOAD '/user/pig/tests/data/types/DataAll' USING PigStorage() AS ( Fint:int,
Flong:long, Fdouble:double, Ffloat:float, Fchar:chararray,
Fchararray:chararray, Fbytearray:bytearray, Fmap:map[], Fbag:BAG{ t:tuple(
name, age, avg ) }, Ftuple:( name:chararray, age:int, avg:float) );
B =GROUP A ALL;
X =FOREACH B GENERATE DIFF ( ( BAG{tuple(int)} ) A.Fbag.age, A.Fint );
STORE X INTO
'/user/pig/tests/results/araceli.1234390832/AggregateFunc_601.out' USING
PigStorage();
# invalid use of DIFF with valid cast for bag field, DIFF contains one
argument instead off two
TEST ErrorHandling.AggregateFunc_60
A =LOAD '/user/pig/tests/data/types/DataAll' USING PigStorage() AS ( Fint:int,
Flong:long, Fdouble:double, Ffloat:float, Fchar:chararray,
Fchararray:chararray, Fbytearray:bytearray, Fmap:map[], Fbag:BAG{ t:tuple(
name, age, avg ) }, Ftuple:( name:chararray, age:int, avg:float) );
B =GROUP A ALL;
X =FOREACH B GENERATE DIFF ( ( BAG{tuple(int)} ) A.Fbag.age );
STORE X INTO '/user/pig/tests/results/araceli.1234381533/AggregateFunc_60.out'
USING PigStorage();
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.