Uploaded image for project: 'Jira Data Center'
  1. Jira Data Center
  2. JRASERVER-44816

Permit add-ons to suppress "Dangerous use of multiple connections" warnings in ConnectionPoolHealthSqlInterceptor



    • We collect Jira feedback from various sources, and we evaluate what we've collected when planning our product roadmap. To understand how this piece of feedback will be reviewed, see our Implementation of New Features Policy.


      NOTE: This suggestion is for JIRA Server. Using JIRA Cloud? See the corresponding suggestion.

      Dave Meyer asked us to file the following suggestion regarding a new feature that was added to JIRA 7 EAP:

      When our add-on (Dataplane) is running reports, JIRA regularly generates log warnings of the following format:

      2015-08-12 16:38:50,758 http-nio-8087-exec-13 WARN scott 998x816x1 d3gpxw 0:0:0:0:0:0:0:1 /rest/dataplane/latest/report/15a9d22d-ff74-4af8-b20c-ecf5fd6c5d20/config.json [c.a.jira.ofbiz.ConnectionPoolHealthSqlInterceptor] Dangerous use of multiple connections: taken => count=3; marks=[3-3]; pool=3/20

      This new code appears to be issuing log statements whenever a single thread has more than a single database connection open. By its very nature, Dataplane needs to do this.

      Is there any way to make the warning threshold adjustable by us? We recognize that the warnings are there to alert the JIRA administrator that something may be going wrong and to prevent deadlocks, but in our case, we are using multiple connections deliberately.

      For example, Dataplane takes great pains to be a careful user of JIRA database connections. Although a single Dataplane thread can certainly use multiple database connections, we never query the same tables that are used in other connections, and we also maintain our own “sub-pool” of database connections to ensure that we never starve JIRA core of needed resources. (For example, Dataplane has its own internal high-water limit that prevents it from trying to use more than 1/3rd of the total JIRA dB connection pool at any time.)

      Could we get some sort of plugin-wide (or even ThreadLocal) setting that allows us to configure the warning threshold to a higher value to eliminate these warnings for our deliberate use? Although I see a way to increase the connection limit by +1 through some sort of strict-mode setting, one will not always be sufficient, and we also don’t want to have to ask the user to make a JIRA properties change to make it work.


        Issue Links



              Unassigned Unassigned
              7c60ab039b09 Scott Dudley [Inactive]
              0 Vote for this issue
              12 Start watching this issue