Vastly decreased multiuser Jet DB Performance under Vista

Testing our VB6-based database application under Vista (Business Pro, Release version, Clean install on fresh partition), all seems largely well with one very noticeable exception: Multiuser Jet 4.0 database access is vastly decreased (often involving several minute waits for simple queries that generally run in one or two seconds); on the other hand, single user access seems quite comparable to its former speed, as does general file system/file server performance.

Is this a known issue with Jet 4.0 under Vista Can anyone suggest any potential workarounds or know of any factors which might be responsible for the performance hit

-Pete


Answer this question

Vastly decreased multiuser Jet DB Performance under Vista

  • janthonyb1

    Thanks very much for your help. From the evidence available, it would appear that the problem is with the interaction of Jet 4 and the file server (Windows 2003 Server in this case). While file server access speed is quite satisfactory overall under Vista, it seems to cause trouble for Jet 4.0.

    Testing:
    - Single user access (database stored either locally or on the file server) yields acceptable performance
    - Multi-user access with the database stored locally, and multiple instances of the application running against it simultaneously, also yields acceptable performance.
    - Multi-user access, with the database stored on the file server, yields very poor performance.

    A manifest file is included with the program, purely to force it to run with the version 6.0.0 Common Controls.

    -Pete

  • Tru_Messiah

    I have not been able to establish this as a known issue.

    Since it is not a known issue, your best recourse is to use your Microsoft Partner Support benefits and report this in an incident (as opposed to advisory). If it is confirmed to be a bug, then it would not be decremented against available incidents.

    If you are not currently a Microsoft Partner, please see the following link:

    http://www.microsoft.com/presspass/press/2005/apr05/04-12ISVAdvisoryPR.mspx



  • HSBF Lewe

    Wow, I haven't seen or heard about such an issue.  Be interested in knowing more about it if true.

    What have you tried to do to isolate the problem

    Is your "single user" testing being done with the MDB on a file server or local

    What happens with multiple connections (from multiple client program instances) on the same machine with a local MDB

    What exactly are you using for a file server   Vista seems to have changed a lot of things from the way it does NTLM authentication by default to... who knows what   I've read that some NAS devices require an authentication level change on Vista clients through security policy settings for example.  Perhaps there are performance tweaks required as well

    I suppose what I'm getting at is trying to figure out whether this is a Jet problem or a problem with the way Jet uses network shares on Vista.

    What kind of application compatability is in effect for your program   Does it have an Application Manifest that specifies the required execution level


  • pompom

    Sadly, both updates and simple selects (even forward-only, locktype=readonly) recordsets experience the slowdowns on the file server.

    The server isn't virtualized at all--it's just a bog-standard file share situation.

    -Pete

  • Pr09aN1g0d

    More fishing...

    Is there a performance problem when only doing simple SELECT queries or is it fine until you update What CursorType and other parameters are you using

    I'm thinking it's locking related, of course. I assume you're holding connected Recordsets for extended periods of time. Does your client multiplex activity over a single connection or leave multiple Connections and Recordsets open (yes, two different issues). I'm thinking ADO here but DAO or ADO.Net will have a lot in common anyway.

    If ADO have you considered turning on row-level locking Then again you might still be locking up lots of rows, depends on what you're doing.

    Sorry, I'm probably barking up the wrong tree.


  • NozFx

    If you have resolved this issue feel free to post your solution on this forum. Thanks.

  • HedleySohn

    In addition to Bob's questions. What is the exact location of this mdb file Is it getting virtualized for each of these users

  • R.X.

    It's typical for our application to have one database connection open at a given time, but to hold several recordsets open. It's easy to find cases where simple selects on new recordsets become incredibly slow in the multi-user/Vista/server situation.

    -Pete

  • kennm

    Which service pack for Jet have you applied

  • Vastly decreased multiuser Jet DB Performance under Vista