Re: [xml] =?utf-8?q?Bug_133736_=E2=80=93_Relax_NG_validation_sometime?= =?utf-8?q?s_takes_long?=
- From: Daniel Veillard <veillard redhat com>
- To: John Loutzenhiser <John Loutzenhiser onevision com>
- Cc: xml gnome org
- Subject: Re: [xml] Bug 133736 â Relax NG validation sometimes takes long
- Date: Tue, 31 Jul 2007 07:54:14 -0400
On Tue, Jul 17, 2007 at 01:35:37PM +0200, John Loutzenhiser wrote:
Hello,
we would very much like to move to relaxng for validation of our xml's
in our middleware, but unfortunately we ran across this bug!
I can confirm the exponential blowup reported in this bug perfectly. A
document with an element with 13 optional attributes takes ~2 seconds
to validate, way too long considering W3C validation using a
semantically equivalant schema takes just a few milliseconds.
It seems the number of validation states undergoes blowup. I can't
pretend to really understand the problem, but there is a loop over all
states in the validation context at line 10461 in relaxng.c
where validate state gets called. With 13 optional attributes it tries
to validate 8192 states, and this loop starts being a real drag. Take
it up to 14 and it tries AGAIN to validate 16,384 states.
We love libxml2, and we love relaxng, but this bug is a real
show-stopper.
Any news? Please, please let us know.
Sounds like a bug, yes, but I had no time to try to address it at the
moment.
Daniel
--
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard | virtualization library http://libvirt.org/
veillard redhat com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]