Janardhan Hungund created HBASE-28804:
-----------------------------------------
Summary: Implement asynchronous retrieval of bucket-cache data
from persistence.
Key: HBASE-28804
URL: https://issues.apache.org/jira/browse/HBASE-28804
Project: HBase
Issue Type: Task
Components: BucketCache
Reporter: Janardhan Hungund
Assignee: Janardhan Hungund
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.
Thanks,
Janardhan
--
This message was sent by Atlassian Jira
(v8.20.10#820010)