Uploaded image for project: 'mod-aes'
  1. mod-aes
  2. MODAES-16

Routing rules can be requested more than once per cache period under heavy load

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: TBD
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 0.0.4
    • Labels:
      None
    • Template:
    • Development Team:
      None

      Description

      The routing rules, retrieved from the configuration interface, are cached for a cache period of 1 minute. When this period expires, the routing rules are retrieved again. When the module is under heavy load, it is possible that many requests are received asynchronously at virtually the same time. If the routing rules cache has expired, each request may trigger a routing rule refresh. This can cause spamming to the configuration interface. For example, here are 72 refreshes that came in at once:

      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:50 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      04:11:51 INFO  uleServiceConfigImpl Refreshed rules: [RoutingRule [criteria=$[?(@.path =~ /^\/circulation\/check-out-by-barcode$/i)], target=fs00001019_default]]
      

      We need to ensure that we only make this call once. Otherwise, it takes several seconds to complete all these requests. It is also possible that this causes increased CPU usage or maxed out thread usage causing the module to become unresponsive via health checks.

        TestRail: Results

          Attachments

            Activity

              People

              Assignee:
              mreno Mathew Reno
              Reporter:
              mreno Mathew Reno
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:

                  TestRail: Runs

                    TestRail: Cases