Getting warmup information

Be aware that this tool is a per-node, per-bucket operation. That means that if you want to perform this operation, you must specify the IP address of a node in the cluster and a named bucket. If you do not provided a named bucket, the server will apply the setting to any default bucket that exists at the specified node. If you want to perform this operation for an entire cluster, you will need to perform the command for every node/bucket combination that exists for that cluster.

You can use cbstats to get information about server warmup, including the status of warmup and whether warmup is enabled. The following are two alternates to filter for the information:

cbstats hostname:port -b bucket_name -p bucket_password | grep 'warmup'

cbstats hostname:port -b bucket_name -p bucket_password raw warmup
  • ep_warmup_thread - Indicates if the warmup has completed. Returns “running” or “complete”.
  • ep_warmup_state - Indicates the current progress of the warmup:
    • Initial - Start warmup processes.
    • EstimateDatabaseItemCount - Estimating database item count.
    • KeyDump - Begin loading keys and metadata, but not documents, into RAM.
    • CheckForAccessLog - Determine if an access log is available. This log indicates which keys have been frequently read or written.
    • LoadingAccessLog - Load information from access log.
    • LoadingData - The server is loading data first for keys listed in the access log, or if no log available, based on keys found during the ‘Key Dump’ phase.
    • Done - The server is ready to handle read and write requests.

High-level warmup statistics that are available are as follows:

Name Description Value Type
ep_warmup_dups Number of failures due to duplicate keys Integer
ep_warmup_estimated_key_count Estimated number of keys in database Integer (DEFAULT = “unknown”)
ep_warmup_estimated_value_count Estimated number of key data to read based on the access log Integer (DEFAULT = “unknown”)
ep_warmup_keys_time Total time spent by loading persisted keys Integer
ep_warmup_min_items_threshold Enable data traffic after loading this percentage of key data Integer
ep_warmup_min_memory_threshold Enable data traffic after filling this % of memory Integer (%)
ep_warmup_oom Number of out of memory failures during warmup Integer
ep_warmup_state What is current warmup state String, refer to WarmupStateTable
ep_warmup_thread Is warmup running? String (“running”, “complete”)
ep_warmup_time Total time spent by loading data (warmup) Integer (microseconds)

There are also additional lower-level, detailed statistics returned by passing the keyword “warmup” for the command. For instance:

cbstats hostname:port -b bucket_name -p bucket_password raw warmup

The additional lower-level stats are as follows. Note that some of these items are also available as higher-level summary statistics about warmup:

Name Description Value Type
ep_warmup Is warmup enabled? String (“enabled”)
ep_warmup_key_count How many keys have been loaded? Integer
ep_warmup_value_count How many key values (data) have been loaded? Integer
ep_warmup_dups Number of failures due to duplicate keys Integer
ep_warmup_estimated_key_count Estimated number of keys in database Integer (DEFAULT = “unknown”)
ep_warmup_estimated_value_count Estimated number of key data to read based on the access log Integer (DEFAULT = “unknown”)
ep_warmup_keys_time Total time spent by loading persisted keys Integer
ep_warmup_min_items_threshold Enable data traffic after loading this percentage of key data Integer
ep_warmup_min_memory_threshold Enable data traffic after filling this % of memory Integer (%)
ep_warmup_oom Number of out of memory failures during warmup Integer
ep_warmup_state What is current warmup state String, refer to WarmupStateTable
ep_warmup_thread Is warmup running? String (“running”, “complete”)
ep_warmup_time Total time spent by loading data (warmup) Integer (microseconds)