processmaker icon indicating copy to clipboard operation
processmaker copied to clipboard

FOUR-18994 [SUMMER] Load screen performance improvements

Open caleeli opened this issue 1 year ago • 1 comments

Issue & Reproduction Steps

WebEntry endpoints are slow. This was caused by two features:

  • Sanitize data when a webentry (task) is submited
  • Get screen with nested screens

Solution

  • Implement a Screen Cache for screens and nested screens.
  • This cache stores a screen by process, by language and by version
  • The cache is cleared when a process translation is updated or the screen is modified.

How to Test

  • Run a web entry like Expenses process
  • You will see a cache was created for the web entry task screens
  • Any time the screen is updated the cache is cleared

Related Tickets & Packages

  • https://processmaker.atlassian.net/browse/FOUR-18994

Code Review Checklist

  • [ ] I have pulled this code locally and tested it on my instance, along with any associated packages.
  • [ ] This code adheres to ProcessMaker Coding Guidelines.
  • [ ] This code includes a unit test or an E2E test that tests its functionality, or is covered by an existing test.
  • [ ] This solution fixes the bug reported in the original ticket.
  • [ ] This solution does not alter the expected output of a component in a way that would break existing Processes.
  • [ ] This solution does not implement any breaking changes that would invalidate documentation or cause existing Processes to fail.
  • [ ] This solution has been tested with enterprise packages that rely on its functionality and does not introduce bugs in those packages.
  • [ ] This code does not duplicate functionality that already exists in the framework or in ProcessMaker.
  • [ ] This ticket conforms to the PRD associated with this part of ProcessMaker.

caleeli avatar Oct 08 '24 19:10 caleeli

https://github.com/user-attachments/assets/04c29469-2366-4acb-87bc-8f0c67882c0d

caleeli avatar Oct 08 '24 19:10 caleeli