 |
 |
 |
Can anyone tell me if and why there was significant change in the XML parser
(or something related to it) on Windows Server 2003 for SP1. The issue is
that we have some older software that used MSXML 2.5 interface. After
installing SP1 the code came to a crawl. It is a multi-threaded app and
each thread read from the same dom. The DOM was populated before the
threads kicked off. After modifying the code to use a later interface it
came back to life. When running the code on the pre-SP1 system it worked
just fine. The delay shows up when many threads are reading form the DOM at
the "same" time and there is switch from one thread to another. pre-sp1 the
app took about 30 seconds, post SP1 it took about 6 minutes and after making
the chnage below it is back in the 30 second range.
I can accept the change now that we can say that MSXML4 is required but
would like to understand what changed and why or what I was doing wrong.
Roughly - The old code instantiated the DOM this way:
One version -
CoCreateInstance(MSXML::CLSID_DOMFreeThreadedDocument, NULL,
CLSCTX_INPROC_SERVER,
MSXML::IID_IXMLDOMDocument,
(void**)&m_pIXMLDOMDocument);
Another Version-
CoCreateInstance(MSXML2::CLSID_FreeThreadedDOMDocument, NULL,
CLSCTX_INPROC_SERVER,
MSXML2::IID_IXMLDOMDocument,
(void**)&m_pIXMLDOMDocument);
The above two crawl.
The new code does it like below and it and it comes back to the same speed.
it used to be pre-sp1
CoCreateInstance(MSXML2::CLSID_FreeThreadedDOMDocument40, NULL,
CLSCTX_INPROC_SERVER,
MSXML2::IID_IXMLDOMDocument,
(void**)&m_pIXMLDOMDocument);
The difference in the last 2 is:
CLSID_FreeThreadedDOMDocument vs CLSID_FreeThreadedDOMDocument40
It is almost as though the statement being made is - we want you to get off
earlier versions of the parser. If not - go slow.
Thanks
|
 | 



|  |
These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on www.altova.com/list/index.html. Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.
|  |
| |
 |
 |
 |