Issue Description
Couldn't load block: BlockKey errors are present in the Xima Software tomcat logs.
- 0:00:02.702 (ConnectionManager.java:455) (n-out) 2018-08-13 09:31:59.503 [ERROR] Couldn't load block: BlockKey [blockType=ORIENT, blockId=425584, localOverride=false, additionalData=[originalCalledPartyNumber]] (CallBlock.java:163)
Cause
Slow read and write speed on the Chronicall server's hard drive that contains the Chronicall database.
The Datagrid is what feeds Chronicall data from the database to populate reports, cradle to grave, and realtime.
It pulls data in 1-hour blocks. If the Datagrid cannot pull the data off the Hard Disk in the time allotted (default is 30 seconds), it will generate this error.
- Here is an article covering the basics of our Datagrid settings if you would like to learn more.
Resolution
Increase Data Grid Max Wait On Block
- Log into Chronicall as an Administrator.
- Navigate to Admin(System) > System Settings
- Select Advanced Settings to expand the options.
- Verify what your Data Grid Max Wait on Block.
- This is the maximum amount of time (in seconds) Chronicall will wait for the data grid to load a block into memory before giving up and trying to load the block data directly from the database.
- Most block loads should take a small fraction of a second, however, organizations with high call volumes with millions of historic calls each year may need to increase this value if the data grid is unable to load data from the database in a timely manner.
- Bump this up to 60 if you are getting consistent BlockKey errors, and then restart the Chronicall service.
Increase the Disk Read/Write speed
- Work with your System Administrator to increase the Read/Write disk speed (we recommend a solid state HDD) as this is usually a key bottleneck in BlockKey errors.
- If you increase the read/write speed, be sure to unregister and re-register your Xima Chronicall serial key.
- This process changes your system's info hash and will unregister your serial key. You may need to call into Xima to reset it on the back end if the manual process linked above does not work to initiate call logging again.