JiBX
  1. JiBX
  2. JIBX-186

Upgraded to 1.1.5 from 1.1 on large project with ~300 mapped types and binding compile comsumes too much CPU and finally runs out of memory.

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Blocker Blocker
    • Resolution: Fixed
    • Affects Version/s: JiBX 1.1.5
    • Fix Version/s: JiBX 1.2
    • Component/s: core
    • Labels:
      None
    • Environment:
      Windows 2003 server, ANT 165, JiBX 115
    • Number of attachments :
      1

      Description

      Trying to upgrade from JiBX 1.1 to 1.1.5 to see if that will fix some apparent jibx code-gen errors (override final method, dup method name in Munge class)
      First I had errors due to change in way 1.1.5 handles abstract classes. After I fixed those the bind compiler now sucks up all CPU time until it exhausts the heap.
      With 1.1 I had to tell ANT -Xmx384m, With 1.1.5 even 768m is not enough.

      I will shortly attach a trimmed down version of my projects class and binding files including an ANT build script.

        Activity

        Hide
        Jon Kosmoski added a comment -

        Complete project that was working with 1.1 until I tried to add stuff in jibx/infor/Metadata.jibx.xml. This new stuff resulted in class loading errors apparently due to duplicate JiBX-generated method names. Upgrade project to 1.1.5 and now binding compile runs out of memory. Expand into top-level folder and run "ant build.clean"

        Show
        Jon Kosmoski added a comment - Complete project that was working with 1.1 until I tried to add stuff in jibx/infor/Metadata.jibx.xml. This new stuff resulted in class loading errors apparently due to duplicate JiBX-generated method names. Upgrade project to 1.1.5 and now binding compile runs out of memory. Expand into top-level folder and run "ant build.clean"
        Hide
        Dennis Sosnoski added a comment -

        Your binding includes a <mapping> which "extends" itself - line 505. This does not make any sense, but does mess up the code generation. I've added a validation check for self-extends, and also for circular reference chains.

        Show
        Dennis Sosnoski added a comment - Your binding includes a <mapping> which "extends" itself - line 505. This does not make any sense, but does mess up the code generation. I've added a validation check for self-extends, and also for circular reference chains.
        Hide
        Dennis Sosnoski added a comment -

        Unfortunately there's still an exception thrown when generating code for the constructed binding, even after the extends self-references are removed. I'll investigate this further and try to at least find the cause of the exception.

        Show
        Dennis Sosnoski added a comment - Unfortunately there's still an exception thrown when generating code for the constructed binding, even after the extends self-references are removed. I'll investigate this further and try to at least find the cause of the exception.
        Hide
        Dennis Sosnoski added a comment -

        After removing the extends="..." references which result in error messages from the binding compiler (just PaymentBasisCode) the build now runs through to the tests. The tests fail with an error which doesn't appear to be JiBX related:

        <testcase classname="test.openapplications.oagis.MetadataBasicTests" name="testIn4GetMetadataParseRender" time="0.016">
        <error message="Searched standard locations, schema not found: C:/Tools/OAGIS/Infor1.0/BODs/Developer/GetMetadata.xsd" type="java.lang.RuntimeException">java.lang.RuntimeException: Searched standard locations, schema not found: C:/Tools/OAGIS/Infor1.0/BODs/Developer/GetMetadata.xsd
        at test.openapplications.oagis.BODTestCase.schemaFileSpec(BODTestCase.java:100)
        at test.openapplications.oagis.BODTestCase.parseRenderValidate(BODTestCase.java:165)
        at test.openapplications.oagis.MetadataBasicTests.testIn4GetMetadataParseRender(MetadataBasicTests.java:59)

        Show
        Dennis Sosnoski added a comment - After removing the extends="..." references which result in error messages from the binding compiler (just PaymentBasisCode) the build now runs through to the tests. The tests fail with an error which doesn't appear to be JiBX related: <testcase classname="test.openapplications.oagis.MetadataBasicTests" name="testIn4GetMetadataParseRender" time="0.016"> <error message="Searched standard locations, schema not found: C:/Tools/OAGIS/Infor1.0/BODs/Developer/GetMetadata.xsd" type="java.lang.RuntimeException">java.lang.RuntimeException: Searched standard locations, schema not found: C:/Tools/OAGIS/Infor1.0/BODs/Developer/GetMetadata.xsd at test.openapplications.oagis.BODTestCase.schemaFileSpec(BODTestCase.java:100) at test.openapplications.oagis.BODTestCase.parseRenderValidate(BODTestCase.java:165) at test.openapplications.oagis.MetadataBasicTests.testIn4GetMetadataParseRender(MetadataBasicTests.java:59)

          People

          • Assignee:
            Dennis Sosnoski
            Reporter:
            Jon Kosmoski
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: