I have configured a test of doing a preload of +- 21 days. This loads 3 weeks into the future and then 3 weeks into the past initially and then does the rest of the calendar after it's finished. The shot below shows how the new code loads appointments:
I tested with a stopwatch the user that has the most appointments in the entire City, easily thousands of them and got the following benchmarks:
I have been able to draw the following conclusions:
- The normal load time should be approximately 6-7 seconds.
- There is a latency/threading/timing issue between Evolution and Evolution-Data-Server which greatly alters the results. It seems like sometimes EDS is not quite ready for a query at startup and then Evolution waits a few seconds and tries again. This possibly could be because of the speed of our server and/or threading issues on 4 CPUs that isn't normally seen on a laptop or workstation. When the two are in sync, it loads in 6 seconds. When they are off, the timeout adds about 6 seconds.
- It seems possible to drop into code which doesn't use the environmental variable for setting the 21 day PRELOAD. Sample #4 followed the old code logic and loaded the calendar in reverse order and took over a minute.
- It seems possible for eds to never sync with Evolution in rare circumstances. In sample #10 data was never returned from GroupWise.