Hi affected people,
The simple reproduction steps in the initial post here never have worked for me. I've also tried to get 3048 or a hanging background process with a few thousand records, with different databases, with Northwind, all without "success".
Can anyone here provide a reliable repro scenario or better yet a database where the error and/or hanging process reliably occurs?
This would be very helpful in discussions with Microsoft.
Servus
Karl
****************
Access Forever, News, DevCon
Access-Entwickler-Konferenz AEK - 19./20.10. Nürnberg
3048 Error Reproduction
Microsoft Access for Microsoft 365 MSO (Version 2408 Build 16.0.17928.20114) 32-bit
Simple Reproduction with database:
- Download and open this: Available Connections (isladogs.co.uk) and notice every refresh(10 seconds by default) that 2 more connections are used up and not returned to the pool/garbage collected.
There are two calls to CurrentDB each refresh, the expectation is that the calls to CurrentDB should be auto garbage collected. They are not.
This causes the pool to empty and when you exit, the references are left open.
If you change the CurrentDB to an object and call close on it, you won't have any leaks and Access may (or may not) close properly.
----------------------- OLDER INFORMATION BELOW--------------
- Create new database A with Table1
- Create new database B with Table2
- In Database A, link Table2 ( External Data -> New Data source -> From Database -> Access -> Link to the data source by creating a linked table )
- In Database A use this: Available Connections (isladogs.co.uk) and notice every refresh(10 seconds by default) that 2 more connections are used up and not returned to the pool/garbage collected
- To make it worse, have a large table and create a continuous form that has a field that uses a function that calls CurrentDB
- This also creates the hanging background process.
- Further testing I've done shows that if you call .close after every usage of CurrentDB, it seems to properly clean up after itself and you'll get no leaks (in *your* code). But you need to manually close each usage of CurrentDB, the garbage collector doesn't seem to do it.

(Note, I don't know why the form says v3.14 at the bottom when it's in the download for 3.16 on the site)