Your "master.xml" is a very large, modular, DocBook 5 document
containing many high res images. (My guess is that it's the high res
images which are causing the issue.)
There is a simple trick A) to very considerably speed up opening this
document B) to consume much less memory.
Procedure:
1) Open "master.xml" (of course, after setting -Xmx4096m; there is
another procedure which does not require first setting -Xmx4096m, but
I'll not explain it here).
2) In the "View" menu, select "Table of contents".
3) In the "View" menu, select "Multiple views -> Use current view as
default".
4) In the dialog box, select "Use as default for this document".
This being done, you may safely revert to -Xmx2048m.
See "Multiple Views" in
http://www.xmlmind.com/xmleditor/_distrib/doc/help/viewMenu.html
--> Other trick, in order A) to speed up a little opening a module
containing many very high res images B) to consume much less memory.
Procedure:
1) Select "View -> Display Images -> As Thumbnails".
2) Select "View -> Use as Default".
See "Display Images" in
http://www.xmlmind.com/xmleditor/_distrib/doc/help/viewMenu.html
--------------------------------------------------------------------
By using these 2 two tricks, you'll find XXE comfortable to use when
working on your "master.xml" document.
In fact, personally, I would not even consider using XXE to edit your
"master.xml" document unless I use these 2 tricks.
--------------------------------------------------------------------
Martin Goik wrote:
Setting mem="-Xss4m -Xmx4096m" in the xxe binary »solves« the problem. A
value of -Xmx2048m is not enough! I've changed this value two times back
and forth observing consistent behaviour. Heap related exceptions no
longer show up when setting -Xmx4096m.
There are still SVG related stack traces but the corresponding images
are being displayed properly. So I guess from Batik's point of view
these SVG exceptions are merely warnings.
Martin Goik wrote:
I try to load a larger Docbook 5 document into current Xmlmind 8.2
personal edition. This used to work with older Xmlmind versions for many
years albeit taking some time for loading.
To our knowledge, the changes made to recent versions of XXE do not
increase its memory consumption.
However, we have found Java 10 to consume more memory than Java 8.
The document in question
resides in Doc/master.xml within the zip Archive at
https://cloud.mi.hdm-stuttgart.de/owncloud/index.php/s/S9z23f7Q8j6j5ZS.
I'm on current Ubuntu 18.04 64 bit Linux.
With stock Xmlmind 8.2 starting without any .xxe8 and current JRE 10 I get:
This also happens with Java 1.6.
Exception in thread "AWT-EventQueue-0" java.util.EmptyStackException
at java.base/java.util.Stack.peek(Stack.java:102)
at
com.xmlmind.xmledit.view.DocumentView$ViewTreeAttacher.leaveElement(DocumentView.java:2702)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:322)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at com.xmlmind.xml.doc.Traversal.traverse(Traversal.java:314)
at
com.xmlmind.xmledit.view.DocumentView$ViewTreeAttacher.run(DocumentView.java:2633)
at
com.xmlmind.xmledit.view.DocumentView.setDocument(DocumentView.java:648)
at com.xmlmind.xmleditapp.kit.Editor.open(Editor.java:222)
at
com.xmlmind.xmleditapp.xkit.MultiDocApp.addOpenedDocument(MultiDocApp.java:308)
at
com.xmlmind.xmleditapp.kit.part.OpenAction.doExec(OpenAction.java:112)
at com.xmlmind.xmleditapp.kit.part.OpenAction.exec(OpenAction.java:73)
at
com.xmlmind.xmleditapp.kit.LengthyAction$1.actionPerformed(LengthyAction.java:43)
at java.desktop/javax.swing.Timer.fireActionPerformed(Timer.java:317)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Timer.java:249)
at
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
at java.desktop/java.awt.EventQueue.access$600(EventQueue.java:97)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native
Method)
at
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
at
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Nothing happens in the Xmlmind Window. Clicking the menu to load the
file again results in:
Exception in thread "TimerQueue" java.lang.OutOfMemoryError: Java heap
space
Sep 07, 2018 11:52:50 PM sun.awt.X11.XToolkit processException
WARNING: Exception on Toolkit thread
java.lang.OutOfMemoryError: Java heap space
Sep 07, 2018 11:53:18 PM sun.awt.X11.XToolkit processException
WARNING: Exception on Toolkit thread
java.lang.OutOfMemoryError: Java heap space
And after a while I get:
SVG transcoder error: null
Enclosed Exception:
file:/ma/goik/GoikLectures/Doc/Tdoc/Ref/Docbook/authorAndPublish.svg:
The attribute "stroke-width" represents an invalid CSS value ("null").
Original message:
The "stroke-width" property does not support identifier values.
org.w3c.dom.DOMException:
file:/ma/goik/GoikLectures/Doc/Tdoc/Ref/Screen/docbook2other.svg:
The attribute "style" represents an invalid CSS declaration
("font-weight:bold;font-size:10.20800018px;line-height:125%;font-family:Sans;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#ffffff").
Original message:
The "center" identifier is not a valid value for the "text-align"
property.
at
org.apache.batik.css.engine.CSSEngine.getCascadedStyleMap(CSSEngine.java:824)
at
org.apache.batik.css.engine.CSSEngine.getComputedStyle(CSSEngine.java:867)
at
org.apache.batik.bridge.CSSUtilities.getComputedStyle(CSSUtilities.java:81)
at
org.apache.batik.bridge.CSSUtilities.convertDisplay(CSSUtilities.java:563)
at
org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:206)
at
org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
at
org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219)
at
org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
at
org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219)
at
org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
at
org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:219)
at
org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:171)
at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:82)
at
org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:208)
at
org.apache.batik.transcoder.image.ImageTranscoder.transcode(ImageTranscoder.java:92)
at
org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(XMLAbstractTranscoder.java:142)
at
org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:156)
at
com.xmlmind.xmleditext.batik_imagetoolkit.BatikImageToolkit$1.createImage(BatikImageToolkit.java:150)
at
com.xmlmind.xmledit.imagetoolkit.ImageToolkits.createImage(ImageToolkits.java:243)
at
com.xmlmind.xmledit.form.ImageContentBuilder.createImage(ImageContentBuilder.java:246)
at
com.xmlmind.xmledit.form.ImageContentBuilder.build(ImageContentBuilder.java:157)
at
com.xmlmind.xmledit.form.ImageViewportVP.createImageContent(ImageViewportVP.java:355)
at
com.xmlmind.xmleditapp.dndview.ImageViewportVP.createImageContent(ImageViewportVP.java:615)
at
com.xmlmind.xmledit.styledgadget.AbstractImageViewport.makeImageContent(AbstractImageViewport.java:325)
at
com.xmlmind.xmledit.styledgadget.AbstractImageViewport.layoutContent(AbstractImageViewport.java:249)
at com.xmlmind.xmledit.styledgadget.Box.layout(Box.java:99)
at
com.xmlmind.xmledit.styledgadget.Division.layoutContent(Division.java:128)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.Division.layoutContent(Division.java:128)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.CollapsibleDivision.layoutContent(CollapsibleDivision.java:138)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.CollapsibleDivision.layoutContent(CollapsibleDivision.java:138)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.CollapsibleDivision.layoutContent(CollapsibleDivision.java:138)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.CollapsibleDivision.layoutContent(CollapsibleDivision.java:138)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at
com.xmlmind.xmledit.styledgadget.CollapsibleDivision.layoutContent(CollapsibleDivision.java:138)
at
com.xmlmind.xmledit.styledgadget.ContainerBox.layout(ContainerBox.java:74)
at
com.xmlmind.xmledit.styledgadget.TextLineContainerBox.layout(TextLineContainerBox.java:62)
at com.xmlmind.xmledit.gadget.RootGadget.layout(RootGadget.java:256)
at com.xmlmind.xmledit.gadget.Gadget.layout(Gadget.java:340)
at
com.xmlmind.xmledit.view.JScrollPaneSupport.componentResized(JScrollPaneSupport.java:224)
at
java.desktop/java.awt.Component.processComponentEvent(Component.java:6415)
at java.desktop/java.awt.Component.processEvent(Component.java:6369)
at java.desktop/java.awt.Container.processEvent(Container.java:2261)
at
java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4966)
at
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2319)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4798)
at
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
at java.desktop/java.awt.EventQueue.access$600(EventQueue.java:97)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(Native
Method)
at
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
at java.base/java.security.AccessController.doPrivileged(Native
Method)
at
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
This repeats ans is probably related to inkscape created SVG images and
Batik struggling with SVG standard violations. CPU load remains at 100%
for several minutes before manually killing the process.
Trying older JRE and openjdk versions and tinkering with -Xmx2048M I
also see:
Sep 07, 2018 11:12:22 PM sun.awt.X11.XToolkit processException
WARNING: Exception on Toolkit thread
java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "CheckForUpdatesAction.CheckThread"
java.lang.OutOfMemoryError: GC overhead limit exceeded
Exception in thread "AWT-XAWT" java.lang.OutOfMemoryError: GC overhead
limit exceeded ...
and
Exception: java.lang.OutOfMemoryError thrown from the
UncaughtExceptionHandler in thread "Glass/Prism Shutdown Hook"
--
XMLmind XML Editor Support List
xmleditor-support@xmlmind.com
http://www.xmlmind.com/mailman/listinfo/xmleditor-support