We are getting "Dynamic Memory Exhausted" error when our application attempts to open the connection to the UltraLite database on some of our Windows Mobile 5 devices. The average database size is 7 MB and each device usually has 60-70 MB of RAM free.
The version on the deployed ulnet11.dll file is: 22.214.171.1242. According to case # 557818, this should have been fixed in 126.96.36.1991.
I have tried limiting the Cache Size to 5M, 4M, 2M and still experience the issue. What is the 'appropriate value' for the cache size? Is there another fix for this issue?
Thanks for your help.
The case you mention limits the default cache size by observing memory available, but a subsequent fix was made to avoid cache allocation failure when the 32Mb application virtual address space is depleted. I suspect this is the problem you are seeing. This fix (#634532) is available in 188.8.131.525 and later.
Without this fix, you'll have to specify an even smaller cache size (512k?) or otherwise reduce the amount of memory your application uses. Opening the UltraLite connection soon after your application starts may also allow larger cache allocation.
answered 11 May '11, 11:12