You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@hbase.apache.org by Jean-Daniel Cryans <jd...@gmail.com> on 2008/08/11 20:35:32 UTC

Re: Unknown Scanner Exception

Dru,

Can you tell me if your situation is the same on as in
https://issues.apache.org/jira/browse/HBASE-810

Thx,

J-D

On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com> wrote:

> What causes the following error?  It's coming from the TableInputFormatBase
> class.  It seems to be fairly random for me.
>
> From what I've read so far, its related to a timeout error?  I  verified my
> map task doesn't take long to process.  Anything else that may cause this?
>
> org.apache.hadoop.hbase.UnknownScannerException:
> org.apache.hadoop.hbase.UnknownScannerException: Name: 4797186499140551292
>        at
> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>
>        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>        at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>        at
> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>        at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>        at
> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1321)
>        at
> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:202)
>        at
> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:84)
>        at
> org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:158)
>        at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>        at
> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2124)

Re: Unknown Scanner Exception

Posted by stack <st...@duboce.net>.
Dru Jensen wrote:
> Hi Andy,
>
> I am pulling html from different web pages and storing it in hbase.  I 
> tried to use heretrix and nutch but they don't have big table support 
> (yet) and I don't need to index, I just need to store them for 
> archiving purposes.
So, now instead, you are crawling into hdfs and then uploading from there?
>
>
> My next big challenge is performance.  It took 18 hours to pull 8000 
> pages and the task never completed.  

It took 18 hours to run your MR job?  Thats way too long.  Or to pull 
down 8k pages with the crawler?

> It launched 4 MR tasks.  Not sure if I got a lock on the table that 
> wouldn't release or what happened.  I am going to add more logging and 
> try to track down what is causing the slowness.
>
If 0.2.0, you might have been running into hbase-820.  Your MR jobs were 
retried?  What error on failed tasks?  You might try a task per (W)ARC 
file (if you were crawling with Heritrix)

> I am storing the results in a column family in the same table I am 
> scanning.   Maybe I should use a different table to store the results?

Same table is fine if you are storing results into different column family.

> Is it better to commit during the reduce task or inside the map task?

See http://wiki.apache.org/hadoop/Hbase/MapReduce for some pointers. In 
particular, last paragraph in 'Hbase as MapReduce job data source and sink'.
>
> Earlier versions, I was using the IdentityTableReducer but if the map 
> task failed, I would lose all results up to that point which (after 
> running for 18 hrs) made me want to change career paths.

Smile.

Did the task not retry?

Out of interest, what kind of Archiving are you about?

St.Ack

>
> Dru
>
> On Aug 12, 2008, at 10:45 AM, Andrew Purtell wrote:
>
>> Dru,
>>
>> My USE issues with TableMap were also related to HTTP
>> transactions in the map taking too long. Might make for a useful
>> design note. I'd be curious to know more details about what you
>> are trying to accomplish if you are willing to share them...
>>
>>   - Andy
>>
>>> From: Dru Jensen <dr...@gmail.com>
>>> Subject: Re: Unknown Scanner Exception
>>> To: hbase-user@hadoop.apache.org
>>> Date: Tuesday, August 12, 2008, 10:00 AM
>>> J-D and Andy,
>>>
>>> This seems to solve the problem.  I thought I had set this
>>> parameter before but realized I set the "master" lease time
>>> instead of the "region server" lease time.
>> [...]
>>> The MR task makes http calls, so I also needed to set the
>>> timeout on the call to make sure it doesn't take longer than
>>> the ping back to the server.
>> [...]
>>
>>
>>
>>
>


Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
Excellent information.  Thank You!

On Aug 13, 2008, at 6:22 AM, Andrew Purtell wrote:

>> From: Dru Jensen <dr...@gmail.com>
>> I am putting data in the same row and column family as
>> i am scanning. According the St.Ack's response, I need
>> to put the data in a separate column family.  I will
>> see if this helps.  I'm curious, does the commit write
>> the data to the same region as the map task is scanning?
>> Is this what may cause contention?
>
> Tables are partitioned by rows so yes if you are
> committing back into the same row that you are scanning,
> both will interact with the same region server. One
> important consideration of this is that if your inserts
> cause a region split, your scanner will be blocked and
> meanwhile the regionserver must then wait for the scanner
> lease to expire before proceeding with the split. This
> can potentially take the full period of the scanner lease
> to get under way. For batch processes of course this is
> acceptable but this entire situation can be avoided by
> using separate tables. I use one table for content and
> another for results, for example. There's more
> application overhead for this because for performance I
> "join" the tables through data duplication, so if one
> table is updated the other must be synchronized. Another
> issue is consistency of the replicas but JGray's row lock
> primitives will help here because it should be possible
> to lock rows in both tables in advance of committing the
> column cells in question, if I understand it correctly.
>
>> Can you disclose what settings you are using for the
>> commons-httpclient?
>
> I set socket timeout depending on the number of fetch
> retries:
>   0 - 10 sec
>   1 - 30 sec
>   2 - 60 sec
>   no further retries after this
> and while reading from the result body stream I use an
> 8K buffer and call reporter.progress() whenever the
> buffer is filled and flushed.
>
>> Is there a way to split the regions before the MR task
>> runs?  I know it is going to write ~2K per row, is
>> there a way to tell HBase to go ahead and split based
>> on this anticipated size?
>
> You can't trigger a split "by hand" (maybe file a JIRA
> if you want this?) but you can influence how often a
> table splits by setting the maximum size an HStore file
> can grow to in DFS. There are relevant per-table and
> global settings. See:
>
> http://mail-archives.apache.org/mod_mbox/hadoop-hbase-user/200808.mbox/%3Cg7dcbi$7rl$1@ger.gmane.org%3E
>
> and
>
> http://mail-archives.apache.org/mod_mbox/hadoop-hbase-user/200807.mbox/%3C116863.54123.qm@web65513.mail.ac4.yahoo.com%3E
>
> Hope this helps,
>
>   - Andy
>
>
>
>
>


Re: Unknown Scanner Exception

Posted by Andrew Purtell <ap...@yahoo.com>.
> From: Dru Jensen <dr...@gmail.com>
> I am putting data in the same row and column family as
> i am scanning. According the St.Ack's response, I need
> to put the data in a separate column family.  I will
> see if this helps.  I'm curious, does the commit write
> the data to the same region as the map task is scanning?   
> Is this what may cause contention?

Tables are partitioned by rows so yes if you are
committing back into the same row that you are scanning,
both will interact with the same region server. One
important consideration of this is that if your inserts
cause a region split, your scanner will be blocked and
meanwhile the regionserver must then wait for the scanner
lease to expire before proceeding with the split. This
can potentially take the full period of the scanner lease
to get under way. For batch processes of course this is
acceptable but this entire situation can be avoided by
using separate tables. I use one table for content and
another for results, for example. There's more 
application overhead for this because for performance I
"join" the tables through data duplication, so if one
table is updated the other must be synchronized. Another
issue is consistency of the replicas but JGray's row lock
primitives will help here because it should be possible
to lock rows in both tables in advance of committing the
column cells in question, if I understand it correctly.

> Can you disclose what settings you are using for the
> commons-httpclient?

I set socket timeout depending on the number of fetch
retries:
   0 - 10 sec
   1 - 30 sec
   2 - 60 sec
   no further retries after this
and while reading from the result body stream I use an
8K buffer and call reporter.progress() whenever the
buffer is filled and flushed.

> Is there a way to split the regions before the MR task
> runs?  I know it is going to write ~2K per row, is 
> there a way to tell HBase to go ahead and split based
> on this anticipated size?

You can't trigger a split "by hand" (maybe file a JIRA
if you want this?) but you can influence how often a
table splits by setting the maximum size an HStore file
can grow to in DFS. There are relevant per-table and
global settings. See:

http://mail-archives.apache.org/mod_mbox/hadoop-hbase-user/200808.mbox/%3Cg7dcbi$7rl$1@ger.gmane.org%3E

and

http://mail-archives.apache.org/mod_mbox/hadoop-hbase-user/200807.mbox/%3C116863.54123.qm@web65513.mail.ac4.yahoo.com%3E

Hope this helps,

   - Andy




      

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
Hi Andy and St.Ack,

> I'd be interested to hear if logging turns up anything.

Table commits have sub-second response times.  It looks like crawling  
is causing the slowness.

> Inside the map task definitely. Job failure at the map stage
> would force you to redo anything that might be in the collector.

I am putting data in the same row and column family as i am scanning.   
According the St.Ack's response, I need to put the data in a separate  
column family.  I will see if this helps.  I'm curious, does the  
commit write the data to the same region as the map task is scanning?   
Is this what may cause contention?

> In general crawling, especially if you are recursively following
> links (are you?), can take a long time... Often remote servers
> are quite slow. I set a socket and connection timeout for
> commons-httpclient and retry.

I am lucky, I do not need to recurse links.  Can you disclose what  
settings you are using for the commons-httpclient?

> Another possibility is to run a MR job ahead of time to build
> a worklist in DFS and avoid use of TableMap entirely. This
> would also allow you to split the work into more maps.


I may end up doing this if I find that the number of MR tasks is not  
sufficient.

Is there a way to split the regions before the MR task runs?  I know  
it is going to write ~2K per row, is there a way to tell HBase to go  
ahead and split based on this anticipated size?

thanks,
Dru

Re: Unknown Scanner Exception

Posted by Andrew Purtell <ap...@yahoo.com>.
Hi Dru,

> From: Dru Jensen <dr...@gmail.com>
> Subject: Re: Unknown Scanner Exception
> To: hbase-user@hadoop.apache.org
> Date: Tuesday, August 12, 2008, 12:22 PM
> Hi Andy,
> 
> I am pulling html from different web pages and storing it
> in hbase.  I  tried to use heretrix and nutch but they don't
> have big table support (yet) and I don't need to index, I
> just need to store them for archiving purposes.
> 
> I think it would be an excellent example or use case since
> it seems I'm not the only one running into these issues.

Well you and I will certainly run into the same issues because
we're doing very similar things. 

I wrote a "crawler" that can be distributed out as a map task
that uses a DHT to synchronize activities. (Could have used
HBase for synchronization maybe but the DHT also underpins a
HBase (and Hadoop) service monitoring infrastructure so the DHT
needed to be there anyhow.) The DHT is custom also but that's
another story...

> I am storing the results in a column family in the same
> table I am scanning. Maybe I should use a different table to
> store the results?

Using a separate table to store the results will reduce
contention. 

Another possibility is to run a MR job ahead of time to build
a worklist in DFS and avoid use of TableMap entirely. This
would also allow you to split the work into more maps. It
doesn't make sense to have more mappers than table regions,
but a file split does not have the same I/O considerations. 

> My next big challenge is performance.  It took 18 hours to
> pull 8000 pages and the task never completed.  It launched 4
> MR tasks.  Not sure if I got a lock on the table that
> wouldn't release or what happened.  I am going to add more
> logging and try to track down what is causing the slowness.

I'd be interested to hear if logging turns up anything.

In general crawling, especially if you are recursively following
links (are you?), can take a long time... Often remote servers
are quite slow. I set a socket and connection timeout for
commons-httpclient and retry. Also using an iterative worklist
approach instead of recursion is better -- consider adding
discovered URLs to the worklist and have them picked up the next
time the MR job is run, and rerun the MR task until the worklist
is empty. 

> Is it better to commit during the reduce task or inside the
> map task?

Inside the map task definitely. Job failure at the map stage
would force you to redo anything that might be in the collector.
Potentially a lot of wasted effort. 

Hope this helps,

   - Andy



      

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
Hi Andy,

I am pulling html from different web pages and storing it in hbase.  I  
tried to use heretrix and nutch but they don't have big table support  
(yet) and I don't need to index, I just need to store them for  
archiving purposes.

I think it would be an excellent example or use case since it seems  
I'm not the only one running into these issues.

My next big challenge is performance.  It took 18 hours to pull 8000  
pages and the task never completed.  It launched 4 MR tasks.  Not sure  
if I got a lock on the table that wouldn't release or what happened.   
I am going to add more logging and try to track down what is causing  
the slowness.

I am storing the results in a column family in the same table I am  
scanning.   Maybe I should use a different table to store the results?

Is it better to commit during the reduce task or inside the map task?

Earlier versions, I was using the IdentityTableReducer but if the map  
task failed, I would lose all results up to that point which (after  
running for 18 hrs) made me want to change career paths.

Now I am getting an instance of the HTable and committing directly in  
the map task.  Although I don't lose work up to this point, I'm  
worried this isn't the best way for performance.

Which way do you recommend?

Thanks,
Dru

On Aug 12, 2008, at 10:45 AM, Andrew Purtell wrote:

> Dru,
>
> My USE issues with TableMap were also related to HTTP
> transactions in the map taking too long. Might make for a useful
> design note. I'd be curious to know more details about what you
> are trying to accomplish if you are willing to share them...
>
>   - Andy
>
>> From: Dru Jensen <dr...@gmail.com>
>> Subject: Re: Unknown Scanner Exception
>> To: hbase-user@hadoop.apache.org
>> Date: Tuesday, August 12, 2008, 10:00 AM
>> J-D and Andy,
>>
>> This seems to solve the problem.  I thought I had set this
>> parameter before but realized I set the "master" lease time
>> instead of the "region server" lease time.
> [...]
>> The MR task makes http calls, so I also needed to set the
>> timeout on the call to make sure it doesn't take longer than
>> the ping back to the server.
> [...]
>
>
>
>


Re: Unknown Scanner Exception

Posted by Andrew Purtell <ap...@yahoo.com>.
Dru,

My USE issues with TableMap were also related to HTTP
transactions in the map taking too long. Might make for a useful
design note. I'd be curious to know more details about what you
are trying to accomplish if you are willing to share them...

   - Andy

> From: Dru Jensen <dr...@gmail.com>
> Subject: Re: Unknown Scanner Exception
> To: hbase-user@hadoop.apache.org
> Date: Tuesday, August 12, 2008, 10:00 AM
> J-D and Andy,
> 
> This seems to solve the problem.  I thought I had set this
> parameter before but realized I set the "master" lease time
> instead of the "region server" lease time.
[...]
> The MR task makes http calls, so I also needed to set the
> timeout on the call to make sure it doesn't take longer than
> the ping back to the server.
[...]



      

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
J-D and Andy,

This seems to solve the problem.  I thought I had set this parameter  
before but realized I set the "master" lease time instead of the  
"region server" lease time.

The MR task makes http calls, so I also needed to set the timeout on  
the call to make sure it doesn't take longer than the ping back to the  
server.

                 get = new GetMethod(url);
                  
get.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, new  
DefaultHttpMethodRetryHandler(1, false));
                  
get.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 10000);
                  
get.getParams().setParameter("http.connection.stalecheck", true);
                  
get.getParams().setParameter("http.connection.timeout", 30000);


Finally, the MR task loops through the result set and stores them in a  
hbase table.  I added the report.progress() call to let the server  
know its still working.

Thanks for your help,
Dru

On Aug 11, 2008, at 4:57 PM, Andrew Purtell wrote:

> I use 120 seconds.
>
> The patch for HBASE-816 may work for you also: https://issues.apache.org/jira/secure/attachment/12387963/816.v2.patch
>
>   - Andy
>
>> From: Jean-Daniel Cryans <jd...@gmail.com>
>> Subject: Re: Unknown Scanner Exception
>> To: hbase-user@hadoop.apache.org
>> Date: Monday, August 11, 2008, 4:06 PM
>> Dru,
>>
>> It may be also caused by a compaction going on (or a flush).
>> Best way to be sure is to up the regionserver lease timeout.
>> Default is 30 seconds but I recommend 60 seconds for MR
>> jobs. See if this works for you.
>>
>> J-D
>>
>> On Mon, Aug 11, 2008 at 6:34 PM, Dru Jensen
>> <dr...@gmail.com> wrote:
>>
>>> Hi J-D,
>>>
>>> I watched as one of the map tasks completed
>>> successfully.  Another one was
>>> launched as a child of the second MR task. then I get
>>> the Unknown Scanner
>>> Exception:
>>> org.apache.hadoop.hbase.UnknownScannerException:
>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>> -463563612898654250
> [...]
>
>
>
>


Re: Unknown Scanner Exception

Posted by Andrew Purtell <ap...@yahoo.com>.
I use 120 seconds.

The patch for HBASE-816 may work for you also: https://issues.apache.org/jira/secure/attachment/12387963/816.v2.patch 

   - Andy

> From: Jean-Daniel Cryans <jd...@gmail.com>
> Subject: Re: Unknown Scanner Exception
> To: hbase-user@hadoop.apache.org
> Date: Monday, August 11, 2008, 4:06 PM
> Dru,
> 
> It may be also caused by a compaction going on (or a flush).
> Best way to be sure is to up the regionserver lease timeout.
> Default is 30 seconds but I recommend 60 seconds for MR
> jobs. See if this works for you.
> 
> J-D
> 
> On Mon, Aug 11, 2008 at 6:34 PM, Dru Jensen
> <dr...@gmail.com> wrote:
> 
> > Hi J-D,
> >
> > I watched as one of the map tasks completed
> > successfully.  Another one was
> > launched as a child of the second MR task. then I get
> > the Unknown Scanner
> > Exception:
> > org.apache.hadoop.hbase.UnknownScannerException:
> > org.apache.hadoop.hbase.UnknownScannerException: Name:
> > -463563612898654250
[...]



      

Re: Unknown Scanner Exception

Posted by Jean-Daniel Cryans <jd...@gmail.com>.
Dru,

It may be also caused by a compaction going on (or a flush). Best way to be
sure is to up the regionserver lease timeout. Default is 30 seconds but I
recommend 60 seconds for MR jobs. See if this works for you.

J-D

On Mon, Aug 11, 2008 at 6:34 PM, Dru Jensen <dr...@gmail.com> wrote:

> Hi J-D,
>
> I watched as one of the map tasks completed successfully.  Another one was
> launched as a child of the second MR task. then I get the Unknown Scanner
> Exception:
> org.apache.hadoop.hbase.UnknownScannerException:
> org.apache.hadoop.hbase.UnknownScannerException: Name: -463563612898654250
>        at
> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>        at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>        at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>        at java.lang.reflect.Method.invoke(Method.java:597)
>        at
> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>
>        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
>        at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>        at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>        at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>        at
> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>        at
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>        at
> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1321)
>        at
> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:202)
>        at
> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:84)
>        at
> org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:158)
>        at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>        at
> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2124)
> I checked the table in the UI but it still only shows 4 regions.  Up to
> this point, I have not been able to get this process to complete so I think
> there is more to this than just a failing task.  After re-running the task,
> I continued to get the same error.
>
> By creating an intermediary table, The map/reduce process completed
> successfully.
>
> Thanks again for your help.
> Dru
>
>
> On Aug 11, 2008, at 1:09 PM, Jean-Daniel Cryans wrote:
>
>  Dru,
>>
>> Using another table, but we're still not so sure that it does something
>> bad
>> apart from restarting the Map task (see the discussion between sebastien
>> and
>> stack in 810).
>>
>> J-D
>>
>> On Mon, Aug 11, 2008 at 3:58 PM, Dru Jensen <dr...@gmail.com> wrote:
>>
>>  J-D,
>>>
>>> I have 4 regions for this table all on the same server.
>>>
>>> It looks like it may be related.  I have started another test and will
>>> verify.
>>>
>>> Is there a fix for this issue or should I create a intermediary table for
>>> now?
>>>
>>> thanks,
>>> Dru
>>>
>>>
>>> On Aug 11, 2008, at 11:54 AM, Jean-Daniel Cryans wrote:
>>>
>>> Dru,
>>>
>>>>
>>>> Apart from doing a 'tail' on all your region server logs, watching your
>>>> number of regions in the web UI. How many regions do you have currently
>>>> in
>>>> your table?
>>>>
>>>> J-D
>>>>
>>>> On Mon, Aug 11, 2008 at 2:52 PM, Dru Jensen <dr...@gmail.com>
>>>> wrote:
>>>>
>>>> Hi J-D,
>>>>
>>>>>
>>>>> I am writing to the same table that I'm scanning, however I get this
>>>>> often
>>>>> and would be surprised if its caused by a split.
>>>>>
>>>>> How can I determine if a split is occurring?
>>>>>
>>>>> thanks,
>>>>> Dru
>>>>>
>>>>>
>>>>> On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:
>>>>>
>>>>> Dru,
>>>>>
>>>>>
>>>>>> Can you tell me if your situation is the same on as in
>>>>>> https://issues.apache.org/jira/browse/HBASE-810
>>>>>>
>>>>>> Thx,
>>>>>>
>>>>>> J-D
>>>>>>
>>>>>> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>> What causes the following error?  It's coming from the
>>>>>>
>>>>>>  TableInputFormatBase
>>>>>>> class.  It seems to be fairly random for me.
>>>>>>>
>>>>>>> From what I've read so far, its related to a timeout error?  I
>>>>>>> verified
>>>>>>> my
>>>>>>> map task doesn't take long to process.  Anything else that may cause
>>>>>>> this?
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.UnknownScannerException:
>>>>>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>>>>>> 4797186499140551292
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>>>>>>>  at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>>  at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>>  at
>>>>>>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>>>>>>>  at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>>>>>>
>>>>>>>  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>>>>> Method)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>>>>>>>  at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1321)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:202)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:84)
>>>>>>>  at
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:158)
>>>>>>>  at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>>>>>>  at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>>>>>>  at
>>>>>>>
>>>>>>> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2124)
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>
>

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
Hi J-D,

I watched as one of the map tasks completed successfully.  Another one  
was launched as a child of the second MR task. then I get the Unknown  
Scanner Exception:
org.apache.hadoop.hbase.UnknownScannerException:  
org.apache.hadoop.hbase.UnknownScannerException: Name:  
-463563612898654250
	at  
org 
.apache 
.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
	at  
sun 
.reflect 
.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java: 
25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
	at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)

	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native  
Method)
	at  
sun 
.reflect 
.NativeConstructorAccessorImpl 
.newInstance(NativeConstructorAccessorImpl.java:39)
	at  
sun 
.reflect 
.DelegatingConstructorAccessorImpl 
.newInstance(DelegatingConstructorAccessorImpl.java:27)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
	at  
org 
.apache 
.hadoop 
.hbase 
.RemoteExceptionHandler 
.decodeRemoteException(RemoteExceptionHandler.java:82)
	at org.apache.hadoop.hbase.client.HConnectionManager 
$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
	at org.apache.hadoop.hbase.client.HTable 
$ClientScanner.next(HTable.java:1321)
	at org.apache.hadoop.hbase.mapred.TableInputFormatBase 
$TableRecordReader.next(TableInputFormatBase.java:202)
	at org.apache.hadoop.hbase.mapred.TableInputFormatBase 
$TableRecordReader.next(TableInputFormatBase.java:84)
	at org.apache.hadoop.mapred.MapTask 
$TrackedRecordReader.next(MapTask.java:158)
	at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
	at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
	at org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java: 
2124)
I checked the table in the UI but it still only shows 4 regions.  Up  
to this point, I have not been able to get this process to complete so  
I think there is more to this than just a failing task.  After re- 
running the task, I continued to get the same error.

By creating an intermediary table, The map/reduce process completed  
successfully.

Thanks again for your help.
Dru

On Aug 11, 2008, at 1:09 PM, Jean-Daniel Cryans wrote:

> Dru,
>
> Using another table, but we're still not so sure that it does  
> something bad
> apart from restarting the Map task (see the discussion between  
> sebastien and
> stack in 810).
>
> J-D
>
> On Mon, Aug 11, 2008 at 3:58 PM, Dru Jensen <dr...@gmail.com>  
> wrote:
>
>> J-D,
>>
>> I have 4 regions for this table all on the same server.
>>
>> It looks like it may be related.  I have started another test and  
>> will
>> verify.
>>
>> Is there a fix for this issue or should I create a intermediary  
>> table for
>> now?
>>
>> thanks,
>> Dru
>>
>>
>> On Aug 11, 2008, at 11:54 AM, Jean-Daniel Cryans wrote:
>>
>> Dru,
>>>
>>> Apart from doing a 'tail' on all your region server logs, watching  
>>> your
>>> number of regions in the web UI. How many regions do you have  
>>> currently in
>>> your table?
>>>
>>> J-D
>>>
>>> On Mon, Aug 11, 2008 at 2:52 PM, Dru Jensen <dr...@gmail.com>  
>>> wrote:
>>>
>>> Hi J-D,
>>>>
>>>> I am writing to the same table that I'm scanning, however I get  
>>>> this
>>>> often
>>>> and would be surprised if its caused by a split.
>>>>
>>>> How can I determine if a split is occurring?
>>>>
>>>> thanks,
>>>> Dru
>>>>
>>>>
>>>> On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:
>>>>
>>>> Dru,
>>>>
>>>>>
>>>>> Can you tell me if your situation is the same on as in
>>>>> https://issues.apache.org/jira/browse/HBASE-810
>>>>>
>>>>> Thx,
>>>>>
>>>>> J-D
>>>>>
>>>>> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com>
>>>>> wrote:
>>>>>
>>>>> What causes the following error?  It's coming from the
>>>>>
>>>>>> TableInputFormatBase
>>>>>> class.  It seems to be fairly random for me.
>>>>>>
>>>>>> From what I've read so far, its related to a timeout error?  I
>>>>>> verified
>>>>>> my
>>>>>> map task doesn't take long to process.  Anything else that may  
>>>>>> cause
>>>>>> this?
>>>>>>
>>>>>> org.apache.hadoop.hbase.UnknownScannerException:
>>>>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>>>>> 4797186499140551292
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org 
>>>>>> .apache 
>>>>>> .hadoop 
>>>>>> .hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>>>>>>   at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> sun 
>>>>>> .reflect 
>>>>>> .DelegatingMethodAccessorImpl 
>>>>>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>>   at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>>   at
>>>>>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java: 
>>>>>> 473)
>>>>>>   at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>>>>>
>>>>>>   at  
>>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>>>> Method)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> sun 
>>>>>> .reflect 
>>>>>> .NativeConstructorAccessorImpl 
>>>>>> .newInstance(NativeConstructorAccessorImpl.java:39)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> sun 
>>>>>> .reflect 
>>>>>> .DelegatingConstructorAccessorImpl 
>>>>>> .newInstance(DelegatingConstructorAccessorImpl.java:27)
>>>>>>   at java.lang.reflect.Constructor.newInstance(Constructor.java: 
>>>>>> 513)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org 
>>>>>> .apache 
>>>>>> .hadoop 
>>>>>> .hbase 
>>>>>> .RemoteExceptionHandler 
>>>>>> .decodeRemoteException(RemoteExceptionHandler.java:82)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org.apache.hadoop.hbase.client.HConnectionManager 
>>>>>> $ 
>>>>>> TableServers.getRegionServerWithRetries(HConnectionManager.java: 
>>>>>> 885)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org.apache.hadoop.hbase.client.HTable 
>>>>>> $ClientScanner.next(HTable.java:1321)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>>>>>> $TableRecordReader.next(TableInputFormatBase.java:202)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>>>>>> $TableRecordReader.next(TableInputFormatBase.java:84)
>>>>>>   at
>>>>>>
>>>>>>
>>>>>> org.apache.hadoop.mapred.MapTask 
>>>>>> $TrackedRecordReader.next(MapTask.java:158)
>>>>>>   at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>>>>>   at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>>>>>   at
>>>>>> org.apache.hadoop.mapred.TaskTracker 
>>>>>> $Child.main(TaskTracker.java:2124)
>>>>>>
>>>>>>
>>>>>
>>>>
>>


Re: Unknown Scanner Exception

Posted by Jean-Daniel Cryans <jd...@gmail.com>.
Dru,

Using another table, but we're still not so sure that it does something bad
apart from restarting the Map task (see the discussion between sebastien and
stack in 810).

J-D

On Mon, Aug 11, 2008 at 3:58 PM, Dru Jensen <dr...@gmail.com> wrote:

> J-D,
>
> I have 4 regions for this table all on the same server.
>
> It looks like it may be related.  I have started another test and will
> verify.
>
> Is there a fix for this issue or should I create a intermediary table for
> now?
>
> thanks,
> Dru
>
>
> On Aug 11, 2008, at 11:54 AM, Jean-Daniel Cryans wrote:
>
>  Dru,
>>
>> Apart from doing a 'tail' on all your region server logs, watching your
>> number of regions in the web UI. How many regions do you have currently in
>> your table?
>>
>> J-D
>>
>> On Mon, Aug 11, 2008 at 2:52 PM, Dru Jensen <dr...@gmail.com> wrote:
>>
>>  Hi J-D,
>>>
>>> I am writing to the same table that I'm scanning, however I get this
>>> often
>>> and would be surprised if its caused by a split.
>>>
>>> How can I determine if a split is occurring?
>>>
>>> thanks,
>>> Dru
>>>
>>>
>>> On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:
>>>
>>> Dru,
>>>
>>>>
>>>> Can you tell me if your situation is the same on as in
>>>> https://issues.apache.org/jira/browse/HBASE-810
>>>>
>>>> Thx,
>>>>
>>>> J-D
>>>>
>>>> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com>
>>>> wrote:
>>>>
>>>> What causes the following error?  It's coming from the
>>>>
>>>>> TableInputFormatBase
>>>>> class.  It seems to be fairly random for me.
>>>>>
>>>>> From what I've read so far, its related to a timeout error?  I
>>>>>  verified
>>>>> my
>>>>> map task doesn't take long to process.  Anything else that may cause
>>>>> this?
>>>>>
>>>>> org.apache.hadoop.hbase.UnknownScannerException:
>>>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>>>> 4797186499140551292
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>>>>>    at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>>>>    at
>>>>>
>>>>>
>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>>>    at java.lang.reflect.Method.invoke(Method.java:597)
>>>>>    at
>>>>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>>>>>    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>>>>
>>>>>    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>>> Method)
>>>>>    at
>>>>>
>>>>>
>>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>>>>>    at
>>>>>
>>>>>
>>>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>>>>>    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1321)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:202)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:84)
>>>>>    at
>>>>>
>>>>>
>>>>> org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:158)
>>>>>    at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>>>>    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>>>>    at
>>>>> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2124)
>>>>>
>>>>>
>>>>
>>>
>

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
J-D,

I have 4 regions for this table all on the same server.

It looks like it may be related.  I have started another test and will  
verify.

Is there a fix for this issue or should I create a intermediary table  
for now?

thanks,
Dru

On Aug 11, 2008, at 11:54 AM, Jean-Daniel Cryans wrote:

> Dru,
>
> Apart from doing a 'tail' on all your region server logs, watching  
> your
> number of regions in the web UI. How many regions do you have  
> currently in
> your table?
>
> J-D
>
> On Mon, Aug 11, 2008 at 2:52 PM, Dru Jensen <dr...@gmail.com>  
> wrote:
>
>> Hi J-D,
>>
>> I am writing to the same table that I'm scanning, however I get  
>> this often
>> and would be surprised if its caused by a split.
>>
>> How can I determine if a split is occurring?
>>
>> thanks,
>> Dru
>>
>>
>> On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:
>>
>> Dru,
>>>
>>> Can you tell me if your situation is the same on as in
>>> https://issues.apache.org/jira/browse/HBASE-810
>>>
>>> Thx,
>>>
>>> J-D
>>>
>>> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com>  
>>> wrote:
>>>
>>> What causes the following error?  It's coming from the
>>>> TableInputFormatBase
>>>> class.  It seems to be fairly random for me.
>>>>
>>>> From what I've read so far, its related to a timeout error?  I   
>>>> verified
>>>> my
>>>> map task doesn't take long to process.  Anything else that may  
>>>> cause
>>>> this?
>>>>
>>>> org.apache.hadoop.hbase.UnknownScannerException:
>>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>>> 4797186499140551292
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java: 
>>>> 1115)
>>>>     at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>>>     at
>>>>
>>>> sun 
>>>> .reflect 
>>>> .DelegatingMethodAccessorImpl 
>>>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>>>     at java.lang.reflect.Method.invoke(Method.java:597)
>>>>     at
>>>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>>>>     at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>>>
>>>>     at  
>>>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>>> Method)
>>>>     at
>>>>
>>>> sun 
>>>> .reflect 
>>>> .NativeConstructorAccessorImpl 
>>>> .newInstance(NativeConstructorAccessorImpl.java:39)
>>>>     at
>>>>
>>>> sun 
>>>> .reflect 
>>>> .DelegatingConstructorAccessorImpl 
>>>> .newInstance(DelegatingConstructorAccessorImpl.java:27)
>>>>     at java.lang.reflect.Constructor.newInstance(Constructor.java: 
>>>> 513)
>>>>     at
>>>>
>>>> org 
>>>> .apache 
>>>> .hadoop 
>>>> .hbase 
>>>> .RemoteExceptionHandler 
>>>> .decodeRemoteException(RemoteExceptionHandler.java:82)
>>>>     at
>>>>
>>>> org.apache.hadoop.hbase.client.HConnectionManager 
>>>> $TableServers.getRegionServerWithRetries(HConnectionManager.java: 
>>>> 885)
>>>>     at
>>>>
>>>> org.apache.hadoop.hbase.client.HTable 
>>>> $ClientScanner.next(HTable.java:1321)
>>>>     at
>>>>
>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>>>> $TableRecordReader.next(TableInputFormatBase.java:202)
>>>>     at
>>>>
>>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>>>> $TableRecordReader.next(TableInputFormatBase.java:84)
>>>>     at
>>>>
>>>> org.apache.hadoop.mapred.MapTask 
>>>> $TrackedRecordReader.next(MapTask.java:158)
>>>>     at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>>>     at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>>>     at
>>>> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java: 
>>>> 2124)
>>>>
>>>
>>


Re: Unknown Scanner Exception

Posted by Jean-Daniel Cryans <jd...@gmail.com>.
Dru,

Apart from doing a 'tail' on all your region server logs, watching your
number of regions in the web UI. How many regions do you have currently in
your table?

J-D

On Mon, Aug 11, 2008 at 2:52 PM, Dru Jensen <dr...@gmail.com> wrote:

> Hi J-D,
>
> I am writing to the same table that I'm scanning, however I get this often
> and would be surprised if its caused by a split.
>
> How can I determine if a split is occurring?
>
> thanks,
> Dru
>
>
> On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:
>
>  Dru,
>>
>> Can you tell me if your situation is the same on as in
>> https://issues.apache.org/jira/browse/HBASE-810
>>
>> Thx,
>>
>> J-D
>>
>> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com> wrote:
>>
>>  What causes the following error?  It's coming from the
>>> TableInputFormatBase
>>> class.  It seems to be fairly random for me.
>>>
>>> From what I've read so far, its related to a timeout error?  I  verified
>>> my
>>> map task doesn't take long to process.  Anything else that may cause
>>> this?
>>>
>>> org.apache.hadoop.hbase.UnknownScannerException:
>>> org.apache.hadoop.hbase.UnknownScannerException: Name:
>>> 4797186499140551292
>>>      at
>>>
>>> org.apache.hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java:1115)
>>>      at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>>      at
>>>
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>      at java.lang.reflect.Method.invoke(Method.java:597)
>>>      at
>>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>>>      at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>>
>>>      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>>> Method)
>>>      at
>>>
>>> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
>>>      at
>>>
>>> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
>>>      at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
>>>      at
>>>
>>> org.apache.hadoop.hbase.RemoteExceptionHandler.decodeRemoteException(RemoteExceptionHandler.java:82)
>>>      at
>>>
>>> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>>>      at
>>>
>>> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1321)
>>>      at
>>>
>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:202)
>>>      at
>>>
>>> org.apache.hadoop.hbase.mapred.TableInputFormatBase$TableRecordReader.next(TableInputFormatBase.java:84)
>>>      at
>>>
>>> org.apache.hadoop.mapred.MapTask$TrackedRecordReader.next(MapTask.java:158)
>>>      at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>>      at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>>      at
>>> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java:2124)
>>>
>>
>

Re: Unknown Scanner Exception

Posted by Dru Jensen <dr...@gmail.com>.
Hi J-D,

I am writing to the same table that I'm scanning, however I get this  
often and would be surprised if its caused by a split.

How can I determine if a split is occurring?

thanks,
Dru

On Aug 11, 2008, at 11:35 AM, Jean-Daniel Cryans wrote:

> Dru,
>
> Can you tell me if your situation is the same on as in
> https://issues.apache.org/jira/browse/HBASE-810
>
> Thx,
>
> J-D
>
> On Mon, Aug 11, 2008 at 2:35 PM, Dru Jensen <dr...@gmail.com>  
> wrote:
>
>> What causes the following error?  It's coming from the  
>> TableInputFormatBase
>> class.  It seems to be fairly random for me.
>>
>> From what I've read so far, its related to a timeout error?  I   
>> verified my
>> map task doesn't take long to process.  Anything else that may  
>> cause this?
>>
>> org.apache.hadoop.hbase.UnknownScannerException:
>> org.apache.hadoop.hbase.UnknownScannerException: Name:  
>> 4797186499140551292
>>       at
>> org 
>> .apache 
>> .hadoop.hbase.regionserver.HRegionServer.next(HRegionServer.java: 
>> 1115)
>>       at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
>>       at
>> sun 
>> .reflect 
>> .DelegatingMethodAccessorImpl 
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>       at java.lang.reflect.Method.invoke(Method.java:597)
>>       at
>> org.apache.hadoop.hbase.ipc.HbaseRPC$Server.call(HbaseRPC.java:473)
>>       at org.apache.hadoop.ipc.Server$Handler.run(Server.java:896)
>>
>>       at  
>> sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
>> Method)
>>       at
>> sun 
>> .reflect 
>> .NativeConstructorAccessorImpl 
>> .newInstance(NativeConstructorAccessorImpl.java:39)
>>       at
>> sun 
>> .reflect 
>> .DelegatingConstructorAccessorImpl 
>> .newInstance(DelegatingConstructorAccessorImpl.java:27)
>>       at java.lang.reflect.Constructor.newInstance(Constructor.java: 
>> 513)
>>       at
>> org 
>> .apache 
>> .hadoop 
>> .hbase 
>> .RemoteExceptionHandler 
>> .decodeRemoteException(RemoteExceptionHandler.java:82)
>>       at
>> org.apache.hadoop.hbase.client.HConnectionManager 
>> $TableServers.getRegionServerWithRetries(HConnectionManager.java:885)
>>       at
>> org.apache.hadoop.hbase.client.HTable 
>> $ClientScanner.next(HTable.java:1321)
>>       at
>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>> $TableRecordReader.next(TableInputFormatBase.java:202)
>>       at
>> org.apache.hadoop.hbase.mapred.TableInputFormatBase 
>> $TableRecordReader.next(TableInputFormatBase.java:84)
>>       at
>> org.apache.hadoop.mapred.MapTask 
>> $TrackedRecordReader.next(MapTask.java:158)
>>       at org.apache.hadoop.mapred.MapRunner.run(MapRunner.java:45)
>>       at org.apache.hadoop.mapred.MapTask.run(MapTask.java:219)
>>       at
>> org.apache.hadoop.mapred.TaskTracker$Child.main(TaskTracker.java: 
>> 2124)