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":1067.9000000953674,"ttfb":344.2000002861023,"pageVisibility":"visible","entityId":10318,"key":"jira.project.issue.view-issue","isInitial":true,"threshold":1000,"elementTimings":{},"userDeviceMemory":8,"userDeviceProcessors":64,"apdex":0.5,"journeyId":"a3d4c597-8e81-4b54-8efd-5b41c7cb56dc","navigationType":0,"readyForUser":1154.2000002861023,"redirectCount":0,"resourceLoadedEnd":996.7000002861023,"resourceLoadedStart":367.2000002861023,"resourceTiming":[{"duration":58.39999961853027,"initiatorType":"link","name":"https://community.i2b2.org/jira/s/7fd763ecdf5ed1f47fc4d22fa8382e97-CDN/4x9nqn/820011/16zrvj4/49fa3aa3d35a2cc689cbf274e66cc41a/_/download/contextbatch/css/_super/batch.css","startTime":367.2000002861023,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":367.2000002861023,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":425.59999990463257,"responseStart":0,"secureConnectionStart":0},{"duration":58.90000009536743,"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":367.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":367.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":426.5,"responseStart":0,"secureConnectionStart":0},{"duration":433.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":367.7000002861023,"connectEnd":724.5999999046326,"connectStart":701.3000001907349,"domainLookupEnd":701.3000001907349,"domainLookupStart":701.2000002861023,"fetchStart":367.7000002861023,"redirectEnd":0,"redirectStart":0,"requestStart":724.5999999046326,"responseEnd":801.3000001907349,"responseStart":743,"secureConnectionStart":712.7000002861023},{"duration":440.69999980926514,"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":368.30000019073486,"connectEnd":733.5999999046326,"connectStart":710.7000002861023,"domainLookupEnd":710.7000002861023,"domainLookupStart":710.7000002861023,"fetchStart":368.30000019073486,"redirectEnd":0,"redirectStart":0,"requestStart":734,"responseEnd":809,"responseStart":751.3000001907349,"secureConnectionStart":721.9000000953674},{"duration":375.59999990463257,"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":368.40000009536743,"connectEnd":726,"connectStart":703,"domainLookupEnd":703,"domainLookupStart":703,"fetchStart":368.40000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":726,"responseEnd":744,"responseStart":741.8000001907349,"secureConnectionStart":714.2000002861023},{"duration":407.2000002861023,"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":368.59999990463257,"connectEnd":760.5999999046326,"connectStart":737,"domainLookupEnd":737,"domainLookupStart":737,"fetchStart":368.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":760.7000002861023,"responseEnd":775.8000001907349,"responseStart":774.5999999046326,"secureConnectionStart":748.8000001907349},{"duration":413.7999997138977,"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":368.80000019073486,"connectEnd":767.4000000953674,"connectStart":743.9000000953674,"domainLookupEnd":743.9000000953674,"domainLookupStart":743.8000001907349,"fetchStart":368.80000019073486,"redirectEnd":0,"redirectStart":0,"requestStart":767.5,"responseEnd":782.5999999046326,"responseStart":781.9000000953674,"secureConnectionStart":755.5},{"duration":62.59999990463257,"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":368.90000009536743,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":368.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":431.5,"responseStart":0,"secureConnectionStart":0},{"duration":415.7000002861023,"initiatorType":"script","name":"https://community.i2b2.org/jira/rest/api/1.0/shortcuts/820011/a9e270f026ecabffc9a59343e5439391/shortcuts.js?context=issuenavigation&context=issueaction","startTime":369.09999990463257,"connectEnd":767.9000000953674,"connectStart":742.5,"domainLookupEnd":742.5,"domainLookupStart":742.5,"fetchStart":369.09999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":768,"responseEnd":784.8000001907349,"responseStart":783.4000000953674,"secureConnectionStart":755},{"duration":2.3000001907348633,"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":470.59999990463257,"connectEnd":0,"connectStart":0,"domainLookupEnd":0,"domainLookupStart":0,"fetchStart":470.59999990463257,"redirectEnd":0,"redirectStart":0,"requestStart":0,"responseEnd":472.90000009536743,"responseStart":0,"secureConnectionStart":0},{"duration":469.69999980926514,"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":470.90000009536743,"connectEnd":925.3000001907349,"connectStart":902.3000001907349,"domainLookupEnd":902.3000001907349,"domainLookupStart":902.3000001907349,"fetchStart":470.90000009536743,"redirectEnd":0,"redirectStart":0,"requestStart":926,"responseEnd":940.5999999046326,"responseStart":939.4000000953674,"secureConnectionStart":913.4000000953674},{"duration":500,"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":495.30000019073486,"connectEnd":981.4000000953674,"connectStart":958,"domainLookupEnd":958,"domainLookupStart":958,"fetchStart":495.30000019073486,"redirectEnd":0,"redirectStart":0,"requestStart":981.5,"responseEnd":995.3000001907349,"responseStart":994,"secureConnectionStart":969.4000000953674},{"duration":391.6000003814697,"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":605.0999999046326,"connectEnd":983.5,"connectStart":960.4000000953674,"domainLookupEnd":960.4000000953674,"domainLookupStart":960.4000000953674,"fetchStart":605.0999999046326,"redirectEnd":0,"redirectStart":0,"requestStart":983.5999999046326,"responseEnd":996.7000002861023,"responseStart":996,"secureConnectionStart":971.7000002861023},{"duration":75.5,"initiatorType":"xmlhttprequest","name":"https://community.i2b2.org/jira/rest/webResources/1.0/resources","startTime":978.4000000953674,"connectEnd":1036,"connectStart":1029.8000001907349,"domainLookupEnd":1029.8000001907349,"domainLookupStart":1029.8000001907349,"fetchStart":978.4000000953674,"redirectEnd":0,"redirectStart":0,"requestStart":1036.7000002861023,"responseEnd":1053.9000000953674,"responseStart":1053.0999999046326,"secureConnectionStart":1029.8000001907349}],"fetchStart":0,"domainLookupStart":155,"domainLookupEnd":251,"connectStart":251,"connectEnd":289,"secureConnectionStart":263,"requestStart":289,"responseStart":344,"responseEnd":605,"domLoading":348,"domInteractive":1200,"domContentLoadedEventStart":1200,"domContentLoadedEventEnd":1237,"domComplete":2271,"loadEventStart":2271,"loadEventEnd":2273,"userAgent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)","marks":[{"name":"bigPipe.sidebar-id.start","time":1180.8000001907349},{"name":"bigPipe.sidebar-id.end","time":1181.5999999046326},{"name":"bigPipe.activity-panel-pipe-id.start","time":1181.8000001907349},{"name":"bigPipe.activity-panel-pipe-id.end","time":1185.4000000953674},{"name":"activityTabFullyLoaded","time":1247}],"measures":[],"correlationId":"9c27fab5b46a04","effectiveType":"4g","downlink":10,"rtt":0,"serverDuration":297,"dbReadsTimeInMs":27,"dbConnsTimeInMs":46,"applicationHash":"0629dd8d260e3954ece49053e565d01dabe11609","experiments":[]}}