So, you are spending > 60 seconds in the client before going back to the
regionserver?  If so, can you change this?  Or up the lease period on
scanners > 60 seconds.
St.Ack

On Mon, Jun 29, 2009 at 1:26 PM, llpind <[email protected]> wrote:

>
> Both are defaults (60 second lease period, and 1 scanner caching).  Yeah it
> is taking longer than 60 seconds.
>
>
>
> stack-3 wrote:
> >
> > Try upping timeout on scanners?
> >
> > Is your scanner spending longer than hbase.regionserver.lease.period --
> 60
> > seconds -- in map before it goes back to the server?
> >
> > What do you have for this value: hbase.client.scanner.caching?
> >
> > Is it 1 or something else?  If > 1, then you'll be in client while N are
> > processed; there'll be no trip back to server to renew server-side lease.
> >
> > St.Ack
> >
> > On Fri, Jun 26, 2009 at 2:49 PM, llpind <[email protected]> wrote:
> >
> >>
> >> Tried it like this:
> >>
> >> Scan linkScan = new Scan (Bytes.toBytes(e + "|"), Bytes.toBytes(e +
> >> "|A"));
> >>   linkScan.addColumn(Bytes.toBytes("type"),
> >> Bytes.toBytes("ELECTRONICS"));
> >>  ResultScanner scanner = tblEntity.getScanner(linkScan);
> >>
> >>  for (Result linkRowResult : scanner ) {
> >>    String row = Bytes.toString(linkRowResult.getRow());
> >>  }
> >>
> >>
> >> Same exception.  I would like to mentioned there is an outter loop
> around
> >> the block of code above changing variable 'e' to something else.   Also,
> >> I
> >> checked the type:ELECTRONICS column, and it isn't that sparse.  As you
> >> can
> >> imagine an electronics department has a lot of items in it (in relation
> >> to
> >> other departments), but a given item (row. e.g. Samsung blah) is sparse.
> >> Meaning given all the filters it may be sparse dataset.  If it's becuase
> >> its
> >> sparse, why would it work when i dont use addColumn, but use addFamily
> >> instead?
> >>
> >>
> >>
> >>
> >> Ryan Rawson wrote:
> >> >
> >> > Can you try with the constructor:
> >> > Scan scanSpec = new Scan(startRow, stopRow);
> >> >
> >> > thanks,
> >> > -ryan
> >> >
> >> > On Fri, Jun 26, 2009 at 2:18 PM, llpind<[email protected]>
> wrote:
> >> >>
> >> >> It works find in shell when I do:
> >> >>
> >> >> scan 'tblStore', {COLUMNS =>'type:ELECTRONICS', STARTROW =>
> >> 'TYPE1|TV|',
> >> >> STOPROW => 'TYPE1|TV|A'}
> >> >>
> >> >> Am I doing something wrong in the API call?
> >> >>
> >> >>
> >> >>
> >> >> llpind wrote:
> >> >>>
> >> >>> Yeah I do have a type:ELECTRONIC column.  I have a lot of data in
> the
> >> >>> tall
> >> >>> table, so it may be sparse.    I'm giving it filters like start/stop
> >> row
> >> >>> key and column family/qualifier.   This should still work IMO.  What
> >> >>> other
> >> >>> could be causing this?
> >> >>>
> >> >>>
> >> >>> Ryan Rawson wrote:
> >> >>>>
> >> >>>> are you sure you have that column in your data?  If you are
> >> searching
> >> >>>> for a column that doesnt exist or is very very very sparse, the
> >> >>>> scanner will spend a lot of time searching only to find nothing,
> >> thus
> >> >>>> ending up with these kinds of exceptions....
> >> >>>>
> >> >>>> On Fri, Jun 26, 2009 at 12:35 PM, llpind<[email protected]>
> >> wrote:
> >> >>>>>
> >> >>>>> This exception does not happen if I remove the addColumn, and
> leave
> >> >>>>> only
> >> >>>>> addFamily (linkScan.addFamily(Bytes.toBytes("type")) .
> >> >>>>>
> >> >>>>> also, forgot I also have start and stop rows set:
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>  Scan linkScan = new Scan();.
> >> >>>>>  linkScan.addColumn(Bytes.toBytes("type"),
> >> >>>>> Bytes.toBytes("ELECTRONICS"));
> >> >>>>>            linkScan.setStartRow (Bytes.toBytes(e + "|"));
> >> >>>>>            linkScan.setStopRow (Bytes.toBytes(e + " "));
> >> >>>>>  ResultScanner scanner = tblEntity.getScanner(linkScan);
> >> >>>>>  for (Result linkRowResult : scanner ) {
> >> >>>>>    String row = Bytes.toString(linkRowResult.getRow());
> >> >>>>>  }
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>>
> >> >>>>> llpind wrote:
> >> >>>>>>
> >> >>>>>> Hey,
> >> >>>>>>
> >> >>>>>> I'm doing the following to get a scanner on a tall table:
> >> >>>>>>
> >> >>>>>>  Scan linkScan = new Scan();.
> >> >>>>>>  linkScan.addColumn(Bytes.toBytes("type"),
> >> >>>>>> Bytes.toBytes("ELECTRONICS"));
> >> >>>>>>  ResultScanner scanner = tblEntity.getScanner(linkScan);
> >> >>>>>>  for (Result linkRowResult : scanner ) {
> >> >>>>>>     String row = Bytes.toString(linkRowResult.getRow());
> >> >>>>>>  }
> >> >>>>>>
> >> >>>>>>
> >> >>>>>> ================================================================
> >> >>>>>>         at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
> >> >>>>>> Caused by: org.apache.hadoop.hbase.UnknownScannerException:
> >> >>>>>> org.apache.hadoop.hbase.UnknownScannerException:
> >> -2823498412219891315
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.regionserver.HRegionServer.close(HRegionServer.java:1894)
> >> >>>>>>         at sun.reflect.GeneratedMethodAccessor9.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:643)
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.ipc.HBaseServer$Handler.run(HBaseServer.java:913)
> >> >>>>>>
> >> >>>>>>         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:94)
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.client.HConnectionManager$TableServers.getRegionServerWithRetries(HConnectionManager.java:928)
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.client.HTable$ClientScanner.nextScanner(HTable.java:1764)
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.client.HTable$ClientScanner.next(HTable.java:1859)
> >> >>>>>>         at
> >> >>>>>>
> >>
> org.apache.hadoop.hbase.client.HTable$ClientScanner$1.hasNext(HTable.java:1915)
> >> >>>>>>         ... 8 more
> >> >>>>>>
> >> >>>>>>
> >> >>>>>>
> >> >>>>>
> >> >>>>> --
> >> >>>>> View this message in context:
> >> >>>>>
> >>
> http://www.nabble.com/Scanner-exceptions-in-.20-tp24225950p24226108.html
> >> >>>>> Sent from the HBase User mailing list archive at Nabble.com.
> >> >>>>>
> >> >>>>>
> >> >>>>
> >> >>>>
> >> >>>
> >> >>>
> >> >>
> >> >> --
> >> >> View this message in context:
> >> >>
> >>
> http://www.nabble.com/Scanner-exceptions-in-.20-tp24225950p24227420.html
> >> >> Sent from the HBase User mailing list archive at Nabble.com.
> >> >>
> >> >>
> >> >
> >> >
> >>
> >> --
> >> View this message in context:
> >>
> http://www.nabble.com/Scanner-exceptions-in-.20-tp24225950p24227741.html
> >> Sent from the HBase User mailing list archive at Nabble.com.
> >>
> >>
> >
> >
>
> --
> View this message in context:
> http://www.nabble.com/Scanner-exceptions-in-.20-tp24225950p24261192.html
> Sent from the HBase User mailing list archive at Nabble.com.
>
>

Reply via email to