dlmarion opened a new pull request #2422:
URL: https://github.com/apache/accumulo/pull/2422


   On the client side, ScannerOptions.useScanServer has been added. This option 
is checked in ThriftScanner and TabletServerBatchReaderIterator. If the option 
is set, then a ScanServerLocator implementation is retrieved from the 
ClientContext. The default, DefaultScanServerLocator is used, if a class name 
is not supplied by the user for a different implementation. The ThriftScanner 
and TabletServerBatchReaderIterator use the ScanServerLocator to find a 
ScanServer to use for scanning a Tablet. Once the ScanServer address has been 
resolved, the existing scan code is used to create a Thrift connection using 
the TabletClientService. 
   
   On the server side, the ScanServer class extends TabletServer and provides 
its own implementation of the TabletClientService Thrift interface. The only 
methods that are implemented are startScan, continueScan, closeScan, 
startMultiScan (todo), continueMultiScan (todo), and closeMultiScan (todo). The 
ScanServer performs scans over one Tablet for a single client. Attempts to use 
a ScanServer that is in use by another client return an error on startScan.
   
   The DefaultScanServerLocator has a rudimentary reservation system that 
likely needs a lot of work, and possibly, a different implementation.
   
   Related to #2411 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to