OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
RE: Avoid using the XML DOM because it is (a) slow and (b) notthread-safe

As far as I know, these are facts, not opinions ..

It is well known (well "well" by those who know) that the Java DOM implementations are not thread safe.
The DOM implementations suffer from other issues as well but this is a huge gotcha.

David A. Lee

-----Original Message-----
From: Costello, Roger L. [mailto:costello@mitre.org] 
Sent: Thursday, September 06, 2012 7:41 AM
To: xml-dev@lists.xml.org
Subject: [xml-dev] Avoid using the XML DOM because it is (a) slow and (b) not thread-safe

Hi Folks,

From Michael Kay [1]:

   Many people don't realize that the DOM is not thread-safe 
   (even if you are only doing reads). If you are caching a DOM 
    object, make sure you synchronize all access to it.

    Frankly, this makes DOM unsuited to this kind of application
    (using XSLT in a high-transaction web service). I know I'm 
    biased, but I would suggest switching to Saxon, whose native 
    tree implementation is not only far faster than DOM, but also 
    thread-safe. One user recently tweeted about getting a 100x 
    performance improvement when they made this switch.

Michael also states [2]:

    The DOM spec says that it isn't thread-safe, and the Xerces 
    implementation of the DOM takes this literally - innocent-looking 
    read operations can cause havoc if there are other threads active.

Do you agree? Disagree?


[1] http://stackoverflow.com/questions/12291840/unknown-error-in-xpath/12297873#12297873

[2] http://saxon.markmail.org/search/?q=#query:+page:1+mid:kuocj3i27lgkepwn+state:results 


XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.

[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS