Hi Stack/Suraj,

I tried my MR code on HBase to 0.90.x version.

But I am getting the same exception after the Map stage is complete:
*java.io.IOException:
Pass a Delete or a Put*.

I did a search on web and found the *TableOutputFormat* source code where
the *write* method is throwing the "*Pass a Delete or Put*" error:
http://people.apache.org/~psmith/hbase/sandbox/hbase/hbase-core/cobertura/org.apache.hadoop.hbase.mapreduce.TableOutputFormat.html
(Line 92-96)

>From this, I understand that the value in Reduce Output key,value pair
should be an instance of Put or Delete.

My Reduce is also throwing an instance of Put :

public static class Reducer1 extends TableReducer<Text, IntArrayWritable,
Text>
{
        public void reduce(Text key, Iterator <IntArrayWritable> values,
Context context)
                throws IOException, InterruptedException
        {
           ....
           ....
            Put put = new Put(rowid.getBytes());
            put.add(Bytes.toBytes("cf"), Bytes.toBytes("stats"),
Bytes.toBytes(val));
            context.write(new Text(rowid), put);
        }
}

Then why am I getting this exception *java.io.IOException: Pass a Delete or
a Put*?

Any insights into what I am missing here would be really helpful.

Thanks,
Narayanan





On Wed, Jul 27, 2011 at 12:07 AM, Suraj Varma <[email protected]> wrote:

> I found this older thread that _might_ help you ... but as Stack says,
> better to upgrade to 0.90.x if possible.
>
> http://search-hadoop.com/m/egk1n1T1Sw8/java.io.IOException%253A+Pass+a+Delete+or+a+Put&subj=Re+Type+mismatch
>
> --Suraj
>
> On Tue, Jul 26, 2011 at 11:25 AM, Stack <[email protected]> wrote:
> > On Tue, Jul 26, 2011 at 10:44 AM, Narayanan K <[email protected]>
> wrote:
> >> Hi Everyone,
> >>
> >> I have been trying to run a mapreduce on HBase 0.20.2 - Source and Sink
> both
> >> being HBase Tables.
> >>
> >
> > Please upgrade.  Its hard to help you when you run a version so old.
> > None of us remember how it works.  At least retry with 0.20.6.  Better
> > still, move to 0.90.x.
> > St.Ack
> >
>

Reply via email to