Results 1 to 14 of 14
  1. #1
    Join Date
    Apr 2007
    Posts
    42

    Unanswered: Out Of Memory Error

    Hi everyone,
    I am running MS Access 2003 with a split front-end and back-end database. Recently, I keep getting the MS Access Out Of Memory error (There isn't enough memory to perform this operation. Close unneeded programs and try the operation again).

    I've researched it some,
    a) I don't have imbedded logo's
    b) I have no new temporary tables in this project (actually only 2 in total)
    c) I don't have a custom toolbar
    d) I am explicitly closing all my code-opened recordsets
    e) I am using DAO recordsets (not ADO)

    The form being developed is quite large (it has 9 different sub-forms), but I have 4 MG of memory (using Remote Server) available between me & 3 other ladies (who primarily only use Outlook).

    I've recently started doing daily compact/repairs, but still got the error yesterday.

    Can you give me some idea of memory requirements for development? My front-end is getting bigger (70 forms; 55 linked tables; 3 actual FE tables; 24 reports) - I haven't even started developing the reports for this project yet.

    I appreciate any help you can give me. I've lots hours of works a few times with this error because it sometimes corrupts the entire form and I have to start with the last backup.

    Thanks!!!!!

  2. #2
    Join Date
    Sep 2007
    Location
    Global Village
    Posts
    185
    I had the same problem and it was when I was editing the largest form, it was due to front_end was linked to the back_end on a slow server.
    try make a copy of your back_end to your local computer and link the front_end to it while developing it and then when you finished re-link it to the original back_end on the server.
    <<Never Walk on the Traveled Path, Because it only Leads you to where the Others have been.>>
    Graham Bell

  3. #3
    Join Date
    Apr 2007
    Posts
    42
    I can't really do that with remote server - going back and forth between my local PC takes forever just to copy files. I have both the front-end and back-end within the same folder and work area. I'm using the Jet database, not SQL Server.

    Do you think it would be worth putting my back end tables into the front end database? Actually, I had it that way when I got the first couple of memory errors. I split them apart after that because it was getting too confusing with some tables in the BE (those being maintained) and others in the FE (the new ones). But then again, that was before we increased the memory on the remote server. It's just going to be a lot of work to try that again and re-setup all the table relationships in the Back-End later. I'd have to re-setup everything because I'm still gathering requirements while coding the screens of solid requirements, so my tables are constantly changing still.

    I have noticed a delay when switching from my front-end to my back-end where the back-end will think that the front-end still has a lock on the table (i.e. the form is still open), when I had already closed it. I would close the front-end database completely and then could update the back-end table.

    Comments? Other thoughts?

  4. #4
    Join Date
    Sep 2007
    Location
    Global Village
    Posts
    185
    I didn't mean to move your tables to front_end
    just make a copy of your back_end file to your computer and link your front_end developing file to that instead of the back_end on the server, this is not a huge job , then after you finishe with developing then link the front_end to original back_end on the server.
    In addittion I dont think developing a db while it is beeing used is logical
    <<Never Walk on the Traveled Path, Because it only Leads you to where the Others have been.>>
    Graham Bell

  5. #5
    Join Date
    Apr 2007
    Posts
    42
    I didn't do a good job of explaining - my environment is such that I work remotely and use the "Remote Desktop Connection" software to get to where both the front-end and back-end databases live. The way "Remote Desktop Connection" works isn't like a normal remote server - where you can access something both locally and on the server. Even copying files from the remote server to my local PC takes a really long time - it does not allow for referencing both at the same time. I am doing all my work on that server so that it can be backed up, not locally.

    So, because I couldn't do what you initially suggested, I was asking about your thoughts on bringing my tables into my front-end (if the problem was a slow back-end), thinking that might help me.

    Then I remembered that I had my tables in my front-end database when I first received the memory errors.

    No, I am not developing a database while it is being used. I am gathering requirements and developing the database at the same time (which isn't the best practice, but is required when you can't get all the requirements up front).

    So, I'm not sure what to try. I'm not working locally (even with the front-end). Even if I was, I wouldn't be able to link to a back end using "Remote Desktop Connection" because it doesn't work that way.

    Sorry for the confusion. Any other ideas? Maybe I need to work locally (both front-end and back-end), but my boss has specifically requested that I work from the Remote Desktop Connection. I'd need help to understand so I could explain to her exactly why it would make a difference working locally instead of from Desktop Remote Connection.

    thanks!!

  6. #6
    Join Date
    Sep 2007
    Location
    Global Village
    Posts
    185
    Its strange urging to develop remotely
    Sorry I can't give any advice
    <<Never Walk on the Traveled Path, Because it only Leads you to where the Others have been.>>
    Graham Bell

  7. #7
    Join Date
    Nov 2007
    Location
    Adelaide, South Australia
    Posts
    4,049
    When is the error occurring? Running the form? Saving the form from design mode? Opening the database?
    Owner and Manager of
    CypherBYTE, Microsoft Access Development Specialists.
    Microsoft Access MCP.
    And all around nice guy!


    "Heck it's something understood by accountants ... so it can't be 'that' difficult..." -- Healdem
    "...teach a man to code and he'll be frustrated for life! " -- georgev

  8. #8
    Join Date
    Apr 2007
    Posts
    42
    It typically occurs when going from design view to form view.

  9. #9
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926
    Try opening Task Manager and monitoring the size/growth of the mdb file as it runs. If it keeps growing and growing, look for recordsets which aren't being closed or loads of new variables being created (I try to use consistent variable and recordset names like rs verses a different recordset name every time). The size when the mdb is running will grow as you open form after form but should reach a topping off point (typically, I had overall top sizes in the range of 25-50 meg and when they started reaching around 100meg, I looked at the code and where it jumped significantly.) I also saw a large size growth when I was opening many forms based on the same type of recordsets or opening many recordsets (and especially not closing them.) It shouldn't matter if you're using Remote Desktop Connection. I used it all the time. I think it's something in your mdb causing it to grow significantly and using Task Manager is a good place to see when it grows tremendously. If it immediately jumps extremely high, it might have something to do with your initial form loading and you may want to create a very slimmed down "Main Menu" which then opens the suspected form.
    Last edited by pkstormy; 05-29-08 at 01:39.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  10. #10
    Join Date
    Apr 2007
    Posts
    42

    Thanks So Much

    Thanks a bunch - I'll monitor that and see what I come up with. I appreciate your help (very much so).

  11. #11
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926
    If you get stuck, send an mdb with the one form which is causing problems and we can make some recommendations. Perhaps there's a lot of stuff going on which can be trimmed out or made quicker.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

  12. #12
    Join Date
    Apr 2007
    Posts
    42
    Thanks for the offer. I may take you up on that if this continues. The network engineer moved me to a different environment in order to isolate the problem and see if the problem is the environment or my code/database.

    Give me a few days to see if the problem reoccurs. It had been repeating itself every 5-7 working days, even with me doing a compact/repair daily.

    thanks!

  13. #13
    Join Date
    Apr 2007
    Posts
    42

    More Memory Questions

    Does anyone know if Access 2007 does a better job of managing memory than Access 2003?

    Does anyone know how to tell if the front-end database has reached a size where Access gets starts to get violatile?

    thanks,

  14. #14
    Join Date
    Dec 2004
    Location
    Madison, WI
    Posts
    3,926
    I recall that starting with Access 2000, Microsoft changed the way forms saved (and made it so the forms are larger as my mdb's were greater in sizes). Something about the way the form's saved all the code in them but I can't get specific. I can't tell you if Access 2007 does a better job of managing memory but I would suspect with the trend (from working with Vista and previous Access versions) that it requires more memory.

    You mentioned that you're working on a "Remote Desktop" environment which doesn't lead me to wonder if there isn't a setting for the Remote Desktop connection that perhaps needs adjusting.

    I think Aran1 has a good point that you should perhaps try removing the Remote Desktop usage from the equation and copy the back-end (and front-end) to your local PC (just to test the Out-Of-Memory problem). If you don't get the Out-Of-Memory problem when just working on the mdb on your local PC, I would suspect that using Remote Desktop is somehow the problem. Have you also tried creating a new front-end mdb and linking the tables to that new front-end via using Remote Desktop? If there are no problems with creating new forms in the new mdb, I might then try importing the forms (1 by 1) from the other front-end mdb. It's possible that you also have a corrupt form or some other issue with just that front-end where opening the problematic front-end with the /decompile option or using the jetutil against it might help.

    When you mentioned that going from design view to form view gives you the error, it seems like either it's a form problem, coding issue, or even perhaps a module being utilized which could cause the problem (or again, a Remote Desktop issue/configuration problem). I've seen though where calling third party modules can especially be problematic for design-to-form view issues and it would be interesting to know if you're using any modules. But I would try getting the Remote Desktop out of the picture and get the mde to a local drive or see if it's a specific problem with the front-end mdb and/or a coding/module issues.

    I used Remote Desktop to connect to our company's server and didn't really have any issues developing 70+ forms in an mdb but all my back-ends were SQL Server based and I also had a fast cable internet connection. We also used Citrix which worked very nicely in leui of Remote Desktop but Citrix is pricey (based on single-user licenses).

    I know that uploading the entire mdb would perhaps be too big but it would be really be interesting to see the form designs and code.

    Also, as something I have to mention, I've several issues with using 2 versions of MSAccess on the same PC (not mdb versions but the actual MSAccess programs). For example, having Access 2000 and XP on the same computer caused issues when I imported forms from one mdb into another (regardless of version) and caused corrupt forms if I didn't immediately compile the code after the import (ie. if I made a coding change before compiling). This caused corrupt forms which led to several "wierd" error issues with specific mdb's after importing objects from one mdb into another (I can't recall if Out-Of-Memory was one of the errors or not with an mdb). I don't know if you have 2 versions of Access on your computer (if you replaced 2003 with 2007 - disregard) but it's something to keep in mind.

    As I think about your problem more, I imagine I'll probably have more suggestions but this is all I can think of at the moment (sorry but all I can suggest now is trying to narrow down the issue to what specifically is causing the problem). Hopefully you'll get some other responses on some things to try.
    Last edited by pkstormy; 06-16-08 at 20:46.
    Expert Database Programming
    MSAccess since 1.0, SQL Server since 6.5, Visual Basic (5.0, 6.0)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •