We have the following in the default Zabbix server configuration file, which specifies that the minimum value for CacheSize is 128K:
### Option: CacheSize
# Size of configuration cache, in bytes.
# Shared memory size for storing host, item and trigger data.
# Mandatory: no
# Range: 128K-8G
However, the server does not start even with CacheSize=256K, even with an empty database:
19115:20150713:112836.980 In init_configuration_cache() size:262144
19115:20150713:112836.980 In zbx_mem_create() descr:'configuration cache' param:'CacheSize' size:222823
19115:20150713:112836.980 zbx_shmget() removing existing shm_id:20545569
19115:20150713:112836.980 valid user addresses: [0x7fbcb145f170, 0x7fbcb1495658] total size: 222440
19115:20150713:112836.980 End of zbx_mem_create()
19115:20150713:112836.981 __mem_malloc: skipped 1 asked 8072 skip_min 1432 skip_max 1432
19115:20150713:112836.981 [file:dbconfig.c,line:446] zbx_mem_malloc(): out of memory (requested 8072 bytes)
19115:20150713:112836.981 [file:dbconfig.c,line:446] zbx_mem_malloc(): please increase CacheSize configuration parameter
It seems it does not even manage to create all hashsets in init_configuration_cache().