Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Line 150: retrieve single processing period based on ID,
  • Line 156/157/158: find all periods based on processing schedule and start date,
  • Line 169: the list has been sorted by start date.

Scalyr

Additional I checked the system usage when the requisition initiate endpoint is executed. This time I used our training server where there are more than 90,000 requisitions in RELEASED status. After 15 minutes a user gets 504 error message from backend. It seems like there is no big problem with CPU, disk, memory or network usage. There are two spikes in the CPU usage but they are quickly end. The disk and memory usage is on the same level during the initiation process. The network bandwidth shows that a lot of data have been received by the system while the OpenLMIS tried to create a new requisition for the given facility and program.

Image Added

Solutions

  • Modify domain object that they will not retrieve related data automatically for example a requisition should not retrieve related line items,
  • Try to retrieve the given object only one time, for example currently facility object is retrieved two times,
  • Return only main information about a requisition to the client,
  • Avoid retrieving data from database only to check if those data exists,