When I  load my data I defined all fields to be chararray in the schema. I
can afford to treat everything as chararray.

rid cold be chararray. ( but no real expectations from my side, it's a guid
from coming from db)
AA and BB do come from UDF, UDF does some string processing and
returns substrings as tuples.
Also when I tried to convert the rid to chararray in A3, I get an error,
"can't convert to chararray." without further explanation.

Thank You....
On Wed, Apr 11, 2012 at 4:09 AM, Dmitriy Ryaboy <[email protected]> wrote:

> What type do you expect rid to be?
> Where did AA and BB come from?
>
> D
>
> On Tue, Apr 10, 2012 at 12:03 PM, shan s <[email protected]> wrote:
> > I am currently getting  “Type mismatch in key from map: expected
> > org.apache.pig.impl.io.NullableBytesWritable, recieved
> > org.apache.pig.impl.io.NullableText “
> >
> >
> > I looked up the PIG-919 and related comments, but could not understand
> the
> > reason or the workaround for this problem.
> >
> > Could you please kindly explain this further?
> >
> >
> >
> > I am getting this even before my GROUP, when I do my 3 way JOIN.
> >
> >
> >
> > A1 = JOIN AA BY rid, BB BY rid;
> >
> > A2 = JOIN A1 BY BB::cid, CC by cid;
> >
> > DESCRIBE A2;
> >
> > A3 = FOREACH A2 GENERATE FLATTEN((TOTUPLE(BB::rid)));
> >
> > DESCRIBE A3;
> >
> > DUMP A3;
> >
> >
> >
> >
> >
> > DESCRIBE looks like below.
> >
> >
> >
> > A2: {A1::AA::rid: bytearray,A1::AA::roname: bytearray,A1::AA::asid:
> > bytearray,A1::AA::asname: bytearray,A1::BB::rid:
> bytearray,A1::BB::roname:
> > bytearray,A1::BB::cid: bytearray,A1::BB::csname: bytearray,CC::cid:
> > bytearray,CC::csname: bytearray,CC::chid: bytearray,CC::chname:
> bytearray}
> >
> > A3: {org.apache.pig.builtin.totuple_A1::BB::rid_3::A1::BB::rid:
> bytearray}
> >
> >
> >
> >
> >
> > If map is a problem, I tried to convert it to  tuple (For A3) above, but
> it
> > still does not work, in fact A3 still describes it as map (with a {}, I
> > guess)  Why is that?
> >
> >
> >
> > Appreciate your help! Thanks!!
>

Reply via email to