Menu

#56 Geometries node sometimes scans all jcae3d files

Bug
closed
5
2008-08-18
2007-10-24
No

java.lang.OutOfMemoryError: Java heap space at com.sun.org.apache.xerces.internal.util.XMLStringBuffer.append(XMLStringBuffer.java:205)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.refresh(XMLDocumentScannerImpl.java:1493)
at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.invokeListeners(XMLEntityScanner.java:2070)
at com.sun.org.apache.xerces.internal.impl.XMLEntityScanner.peekChar(XMLEntityScanner.java:486)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2672)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:208)
at org.jcae.mesh.xmldata.XMLHelper.parseXML(XMLHelper.java:57)
at org.jcae.netbeans.mesh.GroupsReader.getGroups(GroupsReader.java:66)
at org.jcae.netbeans.mesh.MeshNode.refreshGroups(MeshNode.java:194)
at org.jcae.netbeans.mesh.MeshNode.<init>(MeshNode.java:61)
at org.jcae.netbeans.mesh.MeshDataObject.createNodeDelegate(MeshDataObject.java:48)
at org.openide.loaders.DataObject$1.run(DataObject.java:258)
at org.openide.util.Mutex.readAccess(Mutex.java:293)
at org.openide.loaders.DataObject.getNodeDelegate(DataObject.java:254)
at org.jcae.netbeans.mesh.ModuleNode$ModuleChildren.createNodes(ModuleNode.java:56)
at org.openide.nodes.Children$Keys$KE.nodes(Children.java:2150)
at org.openide.nodes.ChildrenArray.nodesFor(ChildrenArray.java:129)
at org.openide.nodes.Children$Info.nodes(Children.java:1218)
at org.openide.nodes.Children.justComputeNodes(Children.java:685)
at org.openide.nodes.ChildrenArray.nodes(ChildrenArray.java:70)
at org.openide.nodes.Children.getNodes(Children.java:356)
at org.openide.nodes.FilterNode$ChildrenAdapter.run(FilterNode.java:1451)
at org.openide.nodes.FilterNode$Children.updateKeys(FilterNode.java:1406)
at org.openide.nodes.FilterNode$Children.addNotifyImpl(FilterNode.java:1303)
at org.openide.nodes.FilterNode$Children.addNotify(FilterNode.java:1295)

To reproduce this problem:
* Select a project containing large meshes
* Display a geometry node
* Explode it into faces
* Click on a face in 3D view
Then all amibe*.dir/jcae3d files are scanned, which may produce OOM errors when files are large.
Same happens when first clicking on a face and then explode shape into faces.

AFAICT these files should not be scanned unless operations on mesh nodes are performed.

Discussion

  • Jerome Robert

    Jerome Robert - 2008-02-27

    Logged In: YES
    user_id=656405
    Originator: NO

    Should be fixed in the subversion repository but more tests are needed.

     
  • Jerome Robert

    Jerome Robert - 2008-08-18

    Logged In: YES
    user_id=656405
    Originator: NO

    Fixed in jCAE 0.16. Now only opened geometry files are scanned while picking.

     
  • Jerome Robert

    Jerome Robert - 2008-08-18
    • assigned_to: nobody --> jeromerobert
    • status: open --> closed