keith-turner commented on issue #3670:
URL: https://github.com/apache/accumulo/issues/3670#issuecomment-2176937770

   While working on trying to determine the best angle to get started with 
this, one important thing I realized is that a tablet only has the following 
types of threads that interact with it.
   
    * Scan thread
    * Write thread
    * Minor compaction thread
    * Refresh thread
    * Close thread
    * Instantiation thread that creates a tablet on a tserver
   
   Prior to elasticity there were more types of threads to worry about.  The 
threads above need to synchronize on different in memory state and this 
interleaved with I/O.  Started experimenting with [this 
structure](https://github.com/keith-turner/accumulo/blob/60b129d1f0999ff56942d793e74bab5ba012ee65/server/tserver/src/main/java/org/apache/accumulo/tserver/tablet/TabletState.java).
  The idea behind this structure is that each of the thread type uses a 
coordination object to interact with the shared in memory state of the tablet.  
Maybe this structure would cleanly separate the in memory state+sync from the 
I/O+compute  code, not sure though.


-- 
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