Uploaded image for project: 'OpenNMS'
  1. OpenNMS
  2. NMS-6958

Requisition list very slow to display

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 14.0.0
    • Fix Version/s: 15.0.0
    • Component/s: Web UI - Admin
    • Security Level: Default (Default Security Scheme)
    • Labels:
      None
    • Environment:
      Any system with more than a handful of requisitions in the filesystem

      Description

      To create fifty requisitions and get them all flushed to the filesystem, start OpenNMS and then do:

      for loop
      for X in {1..50} ; do provision.pl requisition create Test-$X ; provision.pl node add Test-$X node-$X node-$X ; provision.pl requisition list Test-$X ; done
      

      Now ready a stopwatch and visit Admin -> Manage Provisioning Requisitions. Or time it using curl:

      curl
      time (curl -u admin:admin http://localhost:8980/opennms/admin/provisioningGroups.htm)
      

      On my system with 50 single-node requisitions, the time is about 32 seconds. With 100 single-node requisitions it's about 71 seconds, so something like a linear increase proportional to the requisition count.

      This problem appears unrelated to my commit of 02 Oct which gives a minor facelift to the list; backing out those changes and doing a clean build / clean install makes no difference to the delay.

      While the page is loading, I see N+4 of the following messages where N is the number of requisitions:

      2014-10-09 17:22:41,599 DEBUG [qtp1835005793-561 - /opennms/admin/provisioningGroups.htm] o.o.n.p.p.FilesystemForeignSourceRepository: flush() called
      

      The pattern is interesting, I see two of them very close together, followed by a pause of about 2N seconds, then the remaining N+2 arrive at a steady rate of about 5 per second. These stats hold up for the two cases I've tested, N=50 and N=100, so don't put a ton of stock in them.

        Attachments

          Activity

            People

            • Assignee:
              agalue Alejandro Galue
              Reporter:
              jeffg Jeff Gehlbach
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: