You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by "Boris Kolpackov (JIRA)" <xe...@xml.apache.org> on 2009/11/03 08:12:00 UTC

[jira] Updated: (XERCESC-1452) DOMNamedNodeMapImpl::item() 10x preformance improvement

     [ https://issues.apache.org/jira/browse/XERCESC-1452?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Boris Kolpackov updated XERCESC-1452:
-------------------------------------

    Affects Version/s:     (was: 2.6.0)
                       3.0.1
        Fix Version/s: 3.1.0
             Assignee: Boris Kolpackov

MAP_SIZE is the number of buckets in the hash table used to store things like entities, etc., as well as attributes. I also tend to think that 193 for attribute map is a bit too much since in most cases we don't have more than a few attributes. This implementation also doesn't not support rehashing so I wonder why don't we use one of the HashMap templates. I will check into this. 

> DOMNamedNodeMapImpl::item() 10x preformance improvement
> -------------------------------------------------------
>
>                 Key: XERCESC-1452
>                 URL: https://issues.apache.org/jira/browse/XERCESC-1452
>             Project: Xerces-C++
>          Issue Type: Improvement
>          Components: DOM
>    Affects Versions: 3.0.1
>         Environment: All environments
>            Reporter: Jeff Keasler
>            Assignee: Boris Kolpackov
>             Fix For: 3.1.0
>
>
> 10 second bug fix -- change MAP_SIZE constant in DOMNamedNodeMapImpl.hpp from 193 to 17.
> I use literally millions of DomNodes each having 2-10 attributes and DOMNamedNodeMapImpl::item() is horribly implemented.  It makes sense to fix the problem by changing the definition of MAP_SIZE to 17.  Even people with 50 attributes will get decent performance if you make this change, wheras the vast majority of people who only use 5-10 will see up to a 10x performance improvement.
> Thank you.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org