diff --git a/WHATS_NEW b/WHATS_NEW index b0720cd10..fc327dffd 100644 --- a/WHATS_NEW +++ b/WHATS_NEW @@ -1,5 +1,6 @@ Version 2.03.15 - =================================== + Increase some hash table size to better support large device sets. Version 2.03.14 - 20th October 2021 =================================== diff --git a/lib/config/config.c b/lib/config/config.c index 0cb0da121..c8dab5683 100644 --- a/lib/config/config.c +++ b/lib/config/config.c @@ -1167,7 +1167,7 @@ int config_def_check(struct cft_check_handle *handle) *vp = 0; *rp = 0; if (!handle->cmd->cft_def_hash) { - if (!(handle->cmd->cft_def_hash = dm_hash_create(60))) { + if (!(handle->cmd->cft_def_hash = dm_hash_create(500))) { log_error("Failed to create configuration definition hash."); r = 0; goto out; } diff --git a/lib/device/dev-cache.c b/lib/device/dev-cache.c index 825e348b4..d3fae4948 100644 --- a/lib/device/dev-cache.c +++ b/lib/device/dev-cache.c @@ -1246,7 +1246,7 @@ int dev_cache_init(struct cmd_context *cmd) if (!(_cache.mem = dm_pool_create("dev_cache", 10 * 1024))) return_0; - if (!(_cache.names = dm_hash_create(120)) || + if (!(_cache.names = dm_hash_create(1020)) || !(_cache.vgid_index = dm_hash_create(30)) || !(_cache.lvid_index = dm_hash_create(29))) { dm_pool_destroy(_cache.mem); diff --git a/lib/filters/filter-persistent.c b/lib/filters/filter-persistent.c index 494a38ece..c164c4a99 100644 --- a/lib/filters/filter-persistent.c +++ b/lib/filters/filter-persistent.c @@ -58,7 +58,7 @@ static int _init_hash(struct pfilter *pf) if (pf->devices) dm_hash_destroy(pf->devices); - if (!(pf->devices = dm_hash_create(111))) + if (!(pf->devices = dm_hash_create(511))) return_0; return 1;