Hi all, while away one of my co-workers discovered and fixed the bug
described below,
the change is on line 514 or datastr.h:
origBlocksize(((logBlocksize_ > LIST_SIZE_LARGE) ? logBlocksize_ << 1 :
TWO_TO(logBlocksize_)))
Thanks...derek
> -----Original Message-----
> From: Nguyen, Dangson
> Sent: Wednesday, September 27, 2000 10:55 AM
> To: Sayeau, Derek
> Subject: Memory problem in sablot
>
> Derek,
>
> One more item for you to communicate with GA. Please do a diff for file
> datastr.h and see. Here are the testcases:
>
> <<mytest.xml>> <<mytest.xsl>>
>
> {
> Basically, the problem was that they always take the specified list size
> and raise it the the power of 2. So if you have an expressions with, say
> 30 AND/OR subexpressions, the size is 2-to-the-power-of-30 = ~
> >1Gbytes!...
> }
>
>
> Thx,
> Dan Nguyen
>
>
> --------------------------------------------------------------------------
> --------------------------------------------------------------------------
> ---------------------
>
> Code Stream *:
> 6.6
>
> Summary *:
> Fixed memory problem in trunk and MS2
>
> Description/Fix *:
> Fixed memory problem when parsing (large) XSLT expressions. The problem
> manifestation was either memory assert or large memory consumption.
>
> Files Modified:
> /cwr/dev6-6/source/sablot/sablot/engine/datastr.h
>
> Product Compatibility:
> This update is compatible with all other versions
>
> No error messages are affected by this change.
mytest.xml
mytest.xsl