Management Pack Builder

 View Only
  • 1.  java.lang.OutOfMemoryError

    Posted Apr 02, 2024 10:15 PM

    I've built my first MP.  In order to pass the connection test, I created a configuration variable to filter the content of a request.  All works well.  However, after when I run a connection test with the filter cleared, I receive a java.lang.OutOfMemoryError.  Should I be concerned?  Is this an indication of a infinite loop or has my test maxed out the appliance's memory?

     



  • 2.  RE: java.lang.OutOfMemoryError

    Broadcom Employee
    Posted Apr 03, 2024 04:31 PM

    Hi Dean,

    It seems more likely that the test has maxed out the appliance's memory. This is a bit surprising, because test connection should not typically require much memory. A few questions that may help us understand the situation:

    1. How much memory is available on the appliance before running the test?

    2. Are you able to provide a screenshot or a bit more detail about where the java.lang.OutOfMemoryError appears?

    3. How large is the JSON API response returned for the Test Connection endpoint? This is the endpoint defined in MP Builder under Source > Test Connection Request.

    Best regards,
    Mark



  • 3.  RE: java.lang.OutOfMemoryError

    Posted Apr 03, 2024 09:57 PM
    1. Error image attached.
    2. MP Builder VM has 8 GB RAM and 2 vCPUs provisioned.  I monitored it during the collection and its RAM consumption is under 50% but CPU spiked at 100% (image attached).
    3. I’m making three request calls. 
      1. Call 1
        1.       Returns 1034 records (VMs) with a 62 KB JSON file size. 
      2. Call 2
        1.       Returns 1227 records with a 671 KB JSON file size. 
        2.       I’m filtering this call to pass the collection test.
      3. Call 3
        1.       Loops through Call 2 and returns varying number of records (0 – 200) per iteration.  Since AP has no “All” request, can’t determine total number of records.
      4. Three objects
        1. Object 1 is based upon Call 1 and Aria Ops
        2. Object 2 is based upon Call 2.
        3. Object 3 is based upon Call 3.
      5. Relationships
        1. Object 1 & 2 (Many:Many)
        2. Object 1 & 3 (1:Many)
        3. Object 2 & 3 (1:Many)
      6. Moreover, I’m working with the API’s provider regarding a filtering issue with Call 2.  I don’t directly air dirty laundry, but the error references the below links.  If they can provide a fix, the number of records should be reduced.
        1. https://go.microsoft.com/fwlink/?linkid=2132413
        2. https://go.microsoft.com/fwlink/?linkid=2101038

     



  • 4.  RE: java.lang.OutOfMemoryError

    Broadcom Employee
    Posted Apr 05, 2024 11:46 AM

    Hi ,

    Thank you for the details. It appears we have a scale issue in MP Builder related to logging the collection result. I will keep you updated as we investigate.

    Best regards,

    Mark



  • 5.  RE: java.lang.OutOfMemoryError

    Broadcom Employee
    Posted Apr 12, 2024 07:12 PM

    Hi ,

    We have identified the issue. It will be addressed in the next release, currently targeted for July. 

    One potential workaround in the meantime would be to change the Source in your design to a smaller environment that would create fewer objects. Another option would be to reduce the Object/metric/relationship definitions in the design itself.

    Best regards,

    Mark