Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Follow the code and read along..

TODO: Chritian's diagram here (fig 3 from his report). Edit to make corrections.

...

  • check client's tabletMap (which is a cache of coordinator's tablet map)
  • if that tablet is recovering or if the obj was not found in any tablet:
    • refresh that cache by:
    • refresher(tabletMap) - hardwired to CoordinatorClient::getTabletMap (in the constructor)
  • finally return the SessionRef

ObjectFinder.cc -> lookup()
check client's tabletMap (which is a cache of coordinator's tablet map)
if that tablet is recovering or if the obj was not found in any tablet:
refresher(tabletMap) - hardwired to CoordinatorClient::getTabletMap - get a new copy of tabletMap
finally return the SessionRef

Some general information:

On the other hand:

BUFFER contains:

  • Transport Layer Header
  • Response Header, respHdr (see Rpc.h)
    • For ReadRpc, the Response struct has:
      • version
      • length
      • pad
  • Data (obj->data from above diagram)