jhungund opened a new pull request, #6182:
URL: https://github.com/apache/hbase/pull/6182

   During the retrieval of data from bucket cache persistence file, a transient 
structure that stores the blocks ordered by filename is constructed from the 
backing map entries. The  population of this transient structure is done during 
the server start-up. This process increases the region-server startup time, if 
the bucketcache has large number of blocks.
   
   This population happens inline with the server restart and blocks the server 
for several minutes. This makes the server restart inconvenient for the 
external users. Restarts during upgrade can run into timeout issues due to this 
delay in the server startup.
   
   Hence, the recommendation in this Jira is to make the cache-retrieval 
asynchronous to the server startup. During a server startup, a new thread is 
spawn that reads the persistence file and creates the required structures from 
persistence file. The server continues with the restart and does not wait for 
the bucket-cache initialisation to complete.
   
   Note that the bucket cache is not available immediately for usage and will 
only be ready to use after the data is repopulated from persistence into memory.
   
   The prefetch thread that may start before the bucket-cache is initialized is 
modified to wait until the bucket cache is initialized.
   
   Change-Id: I2c136d7b1d884f74642d29923172a1ad4ada36e4


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