You are viewing a plain text version of this content. The canonical link for it is here.
Posted to j-dev@xerces.apache.org by "Michael Glavassevich (JIRA)" <xe...@xml.apache.org> on 2007/02/23 19:25:06 UTC

[jira] Resolved: (XERCESJ-773) Poor performance when processing schemas with high values of maxOccurs

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

Michael Glavassevich resolved XERCESJ-773.
------------------------------------------

    Resolution: Fixed

I've just committed an improvement to code in SVN which covers a number of common cases. We now build a representation of large minOccurs/maxOccurs in constant time and memory (which uses a counter during validation) for element and wildcard particles when each model group particle in the content model:

* has minOccurs/maxOccurs == 1; or
* contains only one element/wildcard particle with minOccurs/maxOccurs == 1

Handling sequences, choices and nested minOccurs/maxOccurs is somewhat tricker.  We would need a more general solution than the one implemented for elements and wildcards to process those gracefully.  I've opened a new JIRA issue [1] for tracking that.

[1] http://issues.apache.org/jira/browse/XERCESJ-1227

> Poor performance when processing schemas with high values of maxOccurs
> ----------------------------------------------------------------------
>
>                 Key: XERCESJ-773
>                 URL: https://issues.apache.org/jira/browse/XERCESJ-773
>             Project: Xerces2-J
>          Issue Type: Bug
>          Components: XML Schema Structures
>    Affects Versions: 2.5.0
>         Environment: Operating System: Linux
> Platform: PC
>            Reporter: Steve Baker
>         Assigned To: Michael Glavassevich
>
> When validating an instance of an XML order against its schema, the process took
>  5 minutes 7 seconds and required an increased maximum heap size to run to
> completion.
> The problem was traced to a maxOccurs value of 9999 on an element (the
> OrderLine). Changing this to unbounded reduced the time taked to 1.16 seconds
> and required no increase in the default heap size.

-- 
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: j-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: j-dev-help@xerces.apache.org