locked
New ADODB from Win 10 (1803) too slow RRS feed

  • Question

  • Hello

    Some time ago I updated my Windows 10 Pro to 1803 build.

    Today I detected than my tests, created on VBScript and ADODB work very slow.

    For compare

    1. At computer (Intel 2670QM) with Win7 (msado15.dll 6.1.7601.24023, cscript.exe 5.8.9600.19003) my tests execute within 80 sec.

    2. At computer (Intel 6950X) with Win10 1803 (msado15.dll 10.0.17134.1, vbscript.dll 5.812.10240.16384) my tests execute within 1080 sec.

    Windows.old (at computer with Win10) contains:
     - vbscript.dll - 5.812.10240.16384
     - msado15.dll - 10.0.16299.248

    Early (before update to build 1803) my tests worked as expected - very fast (~80 sec)

    The problem locates in cycle:

     for i=1 to c_recordN
      cmd(0)=base_ID+i
    
      call cmd.execute()
     next 'i

    Where "cmd" it is "ADODB.Command" object.

    I not sure, but seem the problem in "Execute" method.

    Where I may find the informations about changes in new msado15.dll 10.0.17134.1?

    Thanks,

    Dmitry Kovalenko

    www.ibprovider.com

    Monday, August 27, 2018 4:40 PM

Answers

  • Hello All,

    I forget about this topic :)

    The problem was solved in Win10 1809 build.

    But, unfortunatelly, 1809 anyway slower than 1709 - aproximatelly 10-15% :(


    Thursday, May 30, 2019 6:18 AM

All replies

  • Seems I mistaked.

    I copied the files "c:\Program Files (x86)\Common Files\system\ado" from Win10 (1803) to Win7 and rerun my tests - they work fast (as expected).

    The problem not in ADODB :(

    Additional info: both computers (Win7 and Win10) use same OLE DB provider.

    Monday, August 27, 2018 5:55 PM
  • Hi Dmitry Kovalenko,

    Per your description, it seems that you would like to know the reason of the low performance in the application. Based on this, you need to use application performance monitor tool to test your application, then find out the reason of low performance based on the monitor data rather than guess the possible part of the application.

    Best Regards,

    Will


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Tuesday, August 28, 2018 5:58 AM
  • Hu Will,

    Per your description, it seems that you would like to know the reason of the low performance in the application. Based on this, you need to use application performance monitor tool to test your application, then find out the reason of low performance based on the monitor data rather than guess the possible part of the application.

    My "application" - it is simple vbs-file:

    option explicit
    
    dim cn
    set cn=createobject("ADODB.Connection")
    
    cn.Provider="LCPI.IBProvider.3"
    
    cn.Properties("location")      ="inet4://home4/d:\database\ram\ibp_test_fb30_d3.gdb"
    cn.Properties("user id")       ="GAMER"
    cn.Properties("password")      ="vermut"
    cn.Properties("dbclient_type") ="fb.direct"
    
    call cn.Open()
    
    call cn.BeginTrans()
    
    dim cmd
    set cmd=createobject("ADODB.Command")
    
    cmd.ActiveConnection=cn
    
    cmd.CommandText="insert into TTT (C) values(123)"
    
    dim i
    
    dim ts, te
    ts=Now()
    
    for i=1 to 10000
     call cmd.Execute()
    next 'i
    
    te=Now()
    
    wscript.Echo "Duration: "&DateDiff("s",ts,te)&" sec(s)"
    
    cmd.CommandText="delete from TTT"
    
    call cmd.Execute()
    
    call cn.CommitTrans()

    When I execute this script at computer (HOME4, 6950X) with Win10, I see "Duration: 16 sec(s)". In this case script works with DBMS (Firebird) locally installed.

    At computer with Windows 7 (notebook, 2670QM) - "Duration: 7 sec(s)". Moreover, in this second case script works with remote DBMS at HOME4.

    The structure of table TTT is very simple: "create table TTT (C integer)"

    In both cases, I use same OLEDB provider.

    So, the problem not in Firebird and not OLE DB provider.

    ---

    I will try to use "performance monitor tool", may be it help to understand the reason of low execution of this sample.

    Tuesday, August 28, 2018 7:24 AM
  • Perfomance Monitor Tool (from VS2017 15.8.1) points to slow work of functions WaitForSingleObject, SetEvent, send, recv, RtlAllocateHeap ...

    I afraid, it is common problem of update 1803, not ADODB.

    I found the following discussion:

    Computer running very slow after 1803 Update !

    People offer to install KB4284835.

    I tried to install this patch, but got the error "The update is not applicable to your computer."

    Tuesday, August 28, 2018 5:56 PM
  • I rollbacked my system to 1709. It helped.
    Tuesday, August 28, 2018 6:59 PM
  • Perfomance Monitor Tool (from VS2017 15.8.1) points to slow work of functions WaitForSingleObject, SetEvent, send, recv, RtlAllocateHeap ...

    I afraid, it is common problem of update 1803, not ADODB.

    I found the following discussion:

    Computer running very slow after 1803 Update !

    People offer to install KB4284835.

    I tried to install this patch, but got the error "The update is not applicable to your computer."

    Hi Kovalenko,

    The patch "KB4284835" is very old.

    If you would like to update Windows 10, you could install most recent update and see if it works. For the updates, please see:

    Windows 10 update history

    Best Regards,

    Will


    MSDN Community Support
    Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.

    Wednesday, August 29, 2018 10:05 AM
  • I have updated my windows 10 and after that my business application connection become very slow

    Below IS SQL server detail.

    Microsoft SQL Server Management Studio 10.50.4000.0
    Microsoft Data Access Components (MDAC) 10.0.17763.1
    Microsoft MSXML 3.0 5.0 6.0 
    Microsoft Internet Explorer 9.11.17763.0
    Microsoft .NET Framework 2.0.50727.9040
    Operating System 6.3.17763
    I tried to update  KB4284835. but got error 

     "The update is not applicable to your computer."


      
    Thursday, May 30, 2019 6:10 AM
  • Hello All,

    I forget about this topic :)

    The problem was solved in Win10 1809 build.

    But, unfortunatelly, 1809 anyway slower than 1709 - aproximatelly 10-15% :(


    Thursday, May 30, 2019 6:18 AM
  • Hi all,

    same Problem ... it got even worse with 1903/1909

    Is there anything i can do? any fix? 

    My research:

    Windows 7 => Windows 10 1709  +15% extra time

    Windows 7 => Windows 10 1803  +80% extra time

    Windows 7 => Windows 10 1809  still +80% extra time

    Windows 7 => WIndows 10 1903/1909 +100% extra time


    • Edited by Riemenjoe Thursday, December 12, 2019 3:05 PM
    Thursday, December 12, 2019 3:00 PM
  • Hi all,

    same Problem ... it got even worse with 1903/1909

    Is there anything i can do? any fix? 

    My research:

    Windows 7 => Windows 10 1709  +15% extra time

    Windows 7 => Windows 10 1803  +80% extra time

    Windows 7 => Windows 10 1809  still +80% extra time

    Windows 7 => WIndows 10 1903/1909 +100% extra time


    I may confirm, that ADODB in Win10_1909 slow than ADODB in Win10_1809.

    Also, with Win10_1909 I got new problem with "OLEDB Connection Pool" from oledb32.dll (If I right understood my problem).


    Friday, February 7, 2020 6:46 AM
  • Is your question related to Microsoft SQL Server, the topic of this forum?

    You might get lucky and someone with knowledge about writing OLE DB providers for WDAC components might chime in but it unlikely.


    Dan Guzman, Data Platform MVP, http://www.dbdelta.com

    Sunday, February 9, 2020 11:20 PM