I have a front end database that I've used since about 2002 (in .adp format back in those days)
We recently migrated it from 2010 to Office 365 so of course that meant migrating from .ADP to an .ACCDB via Linked tables so we migrated to ODBC linked tables.
The SQL backend was 2008 at the time as well. It was constantly complaining about out of memory / system resources exceed / There isn't enough memory to perform this operation. Close unneeded programs and try the operation again.
So to be clear my dev laptop has 11 terabytes of storage / 32 GB of memory / 20GB swap file on an SSD / Massive I7 processor. So clearly these messages are erroneous in some regards so I looked into all the error messages as hard as I could.
I've changed the MaxLocksPerFile from 9500 to 20000 in the registery, I've increased the swap size of my swap file, I've made sure to only have one form from the application open at a time, I've set processor affinity for opening the file, I've migrated from 2008 SQL to 2016 SQL, I've but nothing has alleviated these problems.
One form is pretty complex and does a lot of things, however many other forms are very basic. I can reproduce the "there isn't enough memory" errors by opening 10 forms at once or just using the large for for an extended amount of time, closing and reopening the database will allow me to keep going, however I do NOT think its a memory link via VBA. Clearly though the errors come from something within Access usage that never occurred while it was an ADP project (dont you miss those btw.) The users are working around it by closing out when they hit an error then logging back in, but i hate that!
Help me Obi Wan Kenobi Access Users, you're my only hope.
We recently migrated it from 2010 to Office 365 so of course that meant migrating from .ADP to an .ACCDB via Linked tables so we migrated to ODBC linked tables.
The SQL backend was 2008 at the time as well. It was constantly complaining about out of memory / system resources exceed / There isn't enough memory to perform this operation. Close unneeded programs and try the operation again.
So to be clear my dev laptop has 11 terabytes of storage / 32 GB of memory / 20GB swap file on an SSD / Massive I7 processor. So clearly these messages are erroneous in some regards so I looked into all the error messages as hard as I could.
I've changed the MaxLocksPerFile from 9500 to 20000 in the registery, I've increased the swap size of my swap file, I've made sure to only have one form from the application open at a time, I've set processor affinity for opening the file, I've migrated from 2008 SQL to 2016 SQL, I've but nothing has alleviated these problems.
One form is pretty complex and does a lot of things, however many other forms are very basic. I can reproduce the "there isn't enough memory" errors by opening 10 forms at once or just using the large for for an extended amount of time, closing and reopening the database will allow me to keep going, however I do NOT think its a memory link via VBA. Clearly though the errors come from something within Access usage that never occurred while it was an ADP project (dont you miss those btw.) The users are working around it by closing out when they hit an error then logging back in, but i hate that!
Help me Obi Wan Kenobi Access Users, you're my only hope.