Hussein Shafie wrote: >I easily reproduced the behavior you described with XXE V2.11, Java >1.4.2_09 on Linux. (I didn't manage to reproduce the problem with V3 and >Java 1.5.0_05, which seems faster and more constant in terms of garbage >collection.) > > Is the problem with unfreed memory solved in v3? when v3 will be roll out?
>After a sequence of close/open, I used Help|About to display memory >usage. The Help|About dialog box does a garbage-collection before >displaying the memory usage. > >My analysis is that there is no memory leak here. I think that due to >the way XXE works, *transient* out of memory errors may happen when >opening a document containing large images. > > Large images ... or a lot of images. my problem are a lot of images... I alreay scaled down the size. >Why do I say that? Because after getting the message "Out of memory" >displayed in the document view in red near the ``broken image'' icon, >using Select|Redraw caused all the images to be properly displayed >again. And after that, Help|About reported that there were still plenty >of memory available. > > I cant reproduce the behavior after making a Redraw. If I use the xxe.jar as framework to integrate it in my application - is there a workaround to free the memory after closing a document in a programming way? Exactly it means: free memory = loose all references to all the old and unused image data. the result of my inspection with jprobe was that the (old and unused) StyledView object is still referenced by some other objects and so the garbage collector cant free it.. thanks Christian K?hrt >In summary, a 1Mb JPEG image has say 1482x1704 pixels. Once uncompressed >each pixel uses 4 bytes (RGBA -- or is it 3 bytes: RGB?). This makes >9.63Mb per image. 4 images means 38Mb. To be on the safe side with XXE, >you'll need say 2.5*38Mb=95Mb. > >No, I'm no ashamed to say this, because the workaround is so obvious: > >* A 1482x1704 pixels is totally unusable on screen: much too large. > >* Simply adjust the CSS style sheet to display images scaled down >(example: CSS style sheet "Images displayed as thumbnails") or define an >element template for <imagedata> having for example: scalefit=1, width=50%. > >With CSS stylesheet "Images displayed as thumbnails", a document which >caused XXE to use 36Mb (document data+XXE code+many plug-in code, etc) / >63Mb, now only uses 7Mb/63Mb. > >Christian K?hrt wrote: > > >>thanks a lot for your fast reply. I will try to explain what I am doing >>to provocate the out of memory exception. >> >>java version: 1.4.2_08 >>os: win xp >>software to observe the memory of the vm: JProbe >>startoptions of xxe: starting without the increase of memory heap and >>allocated memory >> >>workflow: >>1. creating a new docbook article >>2. insert 4 images (jps's around 1mb each) as references in the local >>filesystem >>3. save >>4. close the document >>.... used memory of vm increased from 4mb to 47mb (after the garbage >>collector runs) >>5. open the same document >>... huge increase of used memory again >>6. the first image can be displayed all the others not ... only the >>message instead of the image java.lang.outOfMemory >> >>I can increase the reserved memory by adding the vm options -Xss1m >>-Xmx128m but now it is only a question of time when the first out of >>memory occured (4 times open - close procedure) >> >>do you still need the document? its only a docbook article with 4 >>figures and this figures are references in the local filesystem and they >>are around 1mb sized jpg images. >> >>the out of memory also occured without using jprobe. >> >>like mentioned in my first mail we are planing to integrate xxe in >>another application and out of memory exceptions are not really funny. >> >> > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.xmlmind.com/pipermail/xmleditor-support/attachments/20050928/89129b13/attachment.htm

