L3 Support
  1. L3 Support
  2. LS-930

Perf Optimisation — Avoid unnecessary Flowable DB variable retrieval during order cancellation

    Details

    • Type: Bug Bug
    • Status: Ready for QA Ready for QA (View Workflow)
    • Priority: Normal Normal
    • Resolution: Unresolved
    • Component/s: None
    • Labels:
      None Labels
    • Customer:
      Mobinets
    • Complexity:
      Medium
    • REQUESTER:
      INTERNAL

      Description

      While cancelling an order, the FN service retrieves the Flowable process variables "oldServiceType" and "oldSubscriberIps" from the Flowable DB using the passed variable "fWOID".

      Currently, these variables are fetched for all operation types of the order (8 types: Activation, Termination, etc.),
      even though they are only required in specific cases:

      oldSubscriberIps → required only for operation "IP Management"

      oldServiceType → required only for operations:

      -"Shifting Installation"

      • "Add Service"

      During testing on the cloud version, a performance issue was identified:

      -Fetching both variables from the Flowable DB can take more than 10 seconds

      -The cost is incurred even when the variables are not needed

      Root Cause:

      -Unconditional retrieval of Flowable variables for all operation types, causing unnecessary DB calls and latency.

      Proposed Solution:

      -Refactor the variable retrieval logic to:

      -Avoid reading variables for all operation types

      -Fetch variables only when required, based on the operation type:

      -Retrieve oldSubscriberIps only for "IP Management"

      -Retrieve oldServiceType only for "Shifting Installation" and "Add Service"

      -Read only the single required variable instead of both

      Expected Benefit:

      -Reduce unnecessary Flowable DB calls

      -Improve order cancellation performance

      -Eliminate the ~10s delay observed in the cloud environment

        Activity

          People

          • Assignee:
            Ayed Bada
            Reporter:
            Ayed Bada
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Due:
              Created:
              Updated:
              Planned Start:
              Planned End:
              Actual Start:
              Date of Baselining:

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0 minutes
              0m
              Logged:
              Time Spent - 1 day, 1 hour
              1d 1h

                Drag and Drop