i2b2 Sponsored Project/s:
Currently i2b2 1.7 uses the following validations for its default installations which are not ideal.
<validation>
<validate-on-match>false</validate-on-match>
<background-validation>false</background-validation>
</validation>
If we encounter a situation in which a connection in the pool goes bad we will continue to use that connection which will cause errors in i2b2. The better solution would be to use validation.
<validation>
<validate-on-match>true</validate-on-match>
<check-valid-connection-sql>SELECT 1 FROM DUAL</check-valid-connection-sql>
<use-fast-fail>true</use-fast-fail>
</validation>
Obviously the sql will change per database engine but it should be easy to configure based on each of the datasources defined ie "SELECT 1" for MSSQL
{"report":{"fcp":811.7999997138977,"ttfb":151.09999990463257,"pageVisibility":"visible","entityId":10318,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":1,"journeyId":"14e38ed9-1d00-44f9-b012-99596c694799","navigationType":0,"readyForUser":877.8999996185303,"redirectCount":0,"resourceLoadedEnd":736.6999998092651,"resourceLoadedStart":168.69999980926514,"resourceTiming":[{"duration":36.80000019073486,"initiatorType":"link","name":"https://community.i2b2.org/jira/s/7fd763ecdf5ed1f47fc4d22fa8382e97-CDN/4x9nqn/820011/16zrvj4/49fa3aa3d35a2cc689cbf274e66cc41a/_/download/contextbatch/css/_super/batch.css","startTime":168.69999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":168.69999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":205.5,"responseStart":0,"secureConnectionStart":0},{"duration":37.09999990463257,"initiatorType":"link","name":"https://community.i2b2.org/jira/s/898b8076c5e82f53cd816ca393e45a56-CDN/4x9nqn/820011/16zrvj4/f614b50eeb842ebd1ea7ab2903699907/_/download/contextbatch/css/project.issue.navigator,jira.view.issue,jira.global,atl.general,-_super/batch.css?jira.create.linked.issue=true&richediton=true","startTime":169,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":169,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":206.09999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":406.59999990463257,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/4c9c503fe98f210445831b0d7b0cdc33-CDN/4x9nqn/820011/16zrvj4/49fa3aa3d35a2cc689cbf274e66cc41a/_/download/contextbatch/js/_super/batch.js?locale=en-US","startTime":169.19999980926514,"connectEnd":444.2999997138977,"connectStart":424.59999990463257,"domainLookupEnd":424.59999990463257,"domainLookupStart":424.59999990463257,"fetchStart":169.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":444.2999997138977,"responseEnd":575.7999997138977,"responseStart":463.2999997138977,"secureConnectionStart":434.19999980926514},{"duration":413.7999997138977,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/694e598c1ae48b0f96655173631cd247-CDN/4x9nqn/820011/16zrvj4/f614b50eeb842ebd1ea7ab2903699907/_/download/contextbatch/js/project.issue.navigator,jira.view.issue,jira.global,atl.general,-_super/batch.js?jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":169.59999990463257,"connectEnd":472.19999980926514,"connectStart":452.3999996185303,"domainLookupEnd":452.3999996185303,"domainLookupStart":452.3999996185303,"fetchStart":169.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":472.19999980926514,"responseEnd":583.3999996185303,"responseStart":488,"secureConnectionStart":462},{"duration":401.5,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/53f54e0ac3f00bb56b136b4d2fff2853-CDN/4x9nqn/820011/16zrvj4/aae1242f5fc81cc6a5bb8bc963ccda29/_/download/contextbatch/js/atl.global,-_super/batch.js?locale=en-US","startTime":169.7999997138977,"connectEnd":558.8999996185303,"connectStart":539.2999997138977,"domainLookupEnd":539.2999997138977,"domainLookupStart":539.2999997138977,"fetchStart":169.7999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":559,"responseEnd":571.2999997138977,"responseStart":570.3999996185303,"secureConnectionStart":548.8999996185303},{"duration":403.5,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/d41d8cd98f00b204e9800998ecf8427e-CDN/4x9nqn/820011/16zrvj4/1.0/_/download/batch/jira.webresources:calendar-en/jira.webresources:calendar-en.js","startTime":170,"connectEnd":561.1999998092651,"connectStart":541.7999997138977,"domainLookupEnd":541.7999997138977,"domainLookupStart":541.6999998092651,"fetchStart":170,"redirectEnd":0,"redirectStart":0,"requestStart":561.2999997138977,"responseEnd":573.5,"responseStart":572.2999997138977,"secureConnectionStart":551.2999997138977},{"duration":424,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/d41d8cd98f00b204e9800998ecf8427e-CDN/4x9nqn/820011/16zrvj4/1.0/_/download/batch/jira.webresources:calendar-localisation-moment/jira.webresources:calendar-localisation-moment.js","startTime":170.09999990463257,"connectEnd":579.2999997138977,"connectStart":555.5,"domainLookupEnd":555.5,"domainLookupStart":555.5,"fetchStart":170.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":579.3999996185303,"responseEnd":594.0999999046326,"responseStart":592.6999998092651,"secureConnectionStart":567.0999999046326},{"duration":46.90000009536743,"initiatorType":"link","name":"https://community.i2b2.org/jira/s/30748292e4ca68be6947d7969829384b-CDN/4x9nqn/820011/16zrvj4/4f66da484ef7d95a2a604d3ab014374c/_/download/contextbatch/css/jira.global.look-and-feel,-_super/batch.css","startTime":170.2999997138977,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":170.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":217.19999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":447.5,"initiatorType":"script","name":"https://community.i2b2.org/jira/rest/api/1.0/shortcuts/820011/a9e270f026ecabffc9a59343e5439391/shortcuts.js?context=issuenavigation&context=issueaction","startTime":170.5,"connectEnd":596,"connectStart":571.1999998092651,"domainLookupEnd":571.1999998092651,"domainLookupStart":571.1999998092651,"fetchStart":170.5,"redirectEnd":0,"redirectStart":0,"requestStart":596.0999999046326,"responseEnd":618,"responseStart":616.5999999046326,"secureConnectionStart":583.8999996185303},{"duration":35,"initiatorType":"link","name":"https://community.i2b2.org/jira/s/3ac36323ba5e4eb0af2aa7ac7211b4bb-CDN/4x9nqn/820011/16zrvj4/efa42a25652b26dfd802540c024826b3/_/download/contextbatch/css/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.css?jira.create.linked.issue=true&richediton=true","startTime":265.19999980926514,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":265.19999980926514,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":300.19999980926514,"responseStart":0,"secureConnectionStart":0},{"duration":393.2999997138977,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/8087506fefd02b4096991c90836b49f6-CDN/4x9nqn/820011/16zrvj4/efa42a25652b26dfd802540c024826b3/_/download/contextbatch/js/com.atlassian.jira.projects.sidebar.init,-_super,-jira.view.issue,-project.issue.navigator/batch.js?jira.create.linked.issue=true&locale=en-US&richediton=true","startTime":265.5,"connectEnd":645.3999996185303,"connectStart":625.6999998092651,"domainLookupEnd":625.6999998092651,"domainLookupStart":625.6999998092651,"fetchStart":265.5,"redirectEnd":0,"redirectStart":0,"requestStart":645.5,"responseEnd":658.7999997138977,"responseStart":658,"secureConnectionStart":635.3999996185303},{"duration":431.09999990463257,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/d41d8cd98f00b204e9800998ecf8427e-CDN/4x9nqn/820011/16zrvj4/1.0/_/download/batch/jira.webresources:bigpipe-js/jira.webresources:bigpipe-js.js","startTime":299.2999997138977,"connectEnd":717.6999998092651,"connectStart":698,"domainLookupEnd":698,"domainLookupStart":698,"fetchStart":299.2999997138977,"redirectEnd":0,"redirectStart":0,"requestStart":717.6999998092651,"responseEnd":730.3999996185303,"responseStart":729.1999998092651,"secureConnectionStart":707.6999998092651},{"duration":384.30000019073486,"initiatorType":"script","name":"https://community.i2b2.org/jira/s/d41d8cd98f00b204e9800998ecf8427e-CDN/4x9nqn/820011/16zrvj4/1.0/_/download/batch/jira.webresources:bigpipe-init/jira.webresources:bigpipe-init.js","startTime":352.3999996185303,"connectEnd":722.2999997138977,"connectStart":698.8999996185303,"domainLookupEnd":698.8999996185303,"domainLookupStart":698.8999996185303,"fetchStart":352.3999996185303,"redirectEnd":0,"redirectStart":0,"requestStart":722.2999997138977,"responseEnd":736.6999998092651,"responseStart":735.6999998092651,"secureConnectionStart":710.3999996185303},{"duration":132.5,"initiatorType":"xmlhttprequest","name":"https://community.i2b2.org/jira/rest/webResources/1.0/resources","startTime":752.0999999046326,"connectEnd":868.6999998092651,"connectStart":854.1999998092651,"domainLookupEnd":854.1999998092651,"domainLookupStart":854.1999998092651,"fetchStart":752.0999999046326,"redirectEnd":0,"redirectStart":0,"requestStart":868.7999997138977,"responseEnd":884.5999999046326,"responseStart":883.7999997138977,"secureConnectionStart":856.7999997138977}],"fetchStart":0,"domainLookupStart":3,"domainLookupEnd":77,"connectStart":77,"connectEnd":111,"secureConnectionStart":88,"requestStart":111,"responseStart":151,"responseEnd":352,"domLoading":155,"domInteractive":940,"domContentLoadedEventStart":940,"domContentLoadedEventEnd":978,"domComplete":1135,"loadEventStart":1135,"loadEventEnd":1136,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":921.3999996185303},{"name":"bigPipe.sidebar-id.end","time":922.1999998092651},{"name":"bigPipe.activity-panel-pipe-id.start","time":922.2999997138977},{"name":"bigPipe.activity-panel-pipe-id.end","time":923.2999997138977},{"name":"activityTabFullyLoaded","time":993.7999997138977}],"measures":[],"correlationId":"2c294d02fed657","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":227,"dbReadsTimeInMs":19,"dbConnsTimeInMs":26,"applicationHash":"0629dd8d260e3954ece49053e565d01dabe11609","experiments":[]}}