Issue with FA 1.25 Database Connections
-
Hi All,
I have FusionAuth setup in an Azure App Service. It is setup with a Docker Container using the official Docker Hub image fusionauth/fusionauth-app:1.25.0
This error is happening probably every few hours and we have to rebuild the container and start the service again.
The database is on a PostgreSQL server on Azure on a Gen 5 Compute with 2 vCores and 100GB of storage which is plenty for a dev system that get lightly used.
Here is the error that keeps coming up. Does anyone have any ideas why this keeps happening?
This is becoming a major issue as we are wanting to go live in the next couple of months.
2021-03-24T21:35:35 No new trace in the past 1 min(s).
2021-03-24T21:35:30.393197544Z 2021-03-24 9:35:30.391 PM ERROR io.fusionauth.app.primeframework.error.ExceptionExceptionHandler - An unhandled exception was thrown
2021-03-24T21:35:30.393245145Z com.google.inject.ProvisionException: Unable to provision, see the following errors:
2021-03-24T21:35:30.393257845Z
2021-03-24T21:35:30.393266746Z 1) Error injecting constructor, org.apache.ibatis.exceptions.PersistenceException:
2021-03-24T21:35:30.393275746Z ### Error querying database. Cause: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 2000ms.
2021-03-24T21:35:30.393298646Z ### The error may exist in io/fusionauth/api/domain/TenantMapper.xml
2021-03-24T21:35:30.393306447Z ### The error may involve io.fusionauth.api.domain.TenantMapper.retrieveAll
2021-03-24T21:35:30.393314247Z ### The error occurred while executing a query
2021-03-24T21:35:30.393321847Z ### Cause: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 2000ms.
2021-03-24T21:35:30.393329247Z at io.fusionauth.app.action.oauth2.AuthorizeAction.<init>(AuthorizeAction.java:59)
2021-03-24T21:35:30.393337047Z while locating io.fusionauth.app.action.oauth2.AuthorizeAction
2021-03-24T21:35:30.393344448Z
2021-03-24T21:35:30.393351648Z 1 error
2021-03-24T21:35:30.393359048Z at com.google.inject.internal.InternalProvisionException.toProvisionException(InternalProvisionException.java:226)
2021-03-24T21:35:30.393366848Z at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1097)
2021-03-24T21:35:30.393374448Z at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1131)
2021-03-24T21:35:30.393382049Z at org.primeframework.mvc.action.DefaultActionMapper.map(DefaultActionMapper.java:61)
2021-03-24T21:35:30.393389849Z at org.primeframework.mvc.action.DefaultActionMappingWorkflow.perform(DefaultActionMappingWorkflow.java:92)
2021-03-24T21:35:30.393397249Z at org.primeframework.mvc.workflow.SubWorkflowChain.continueWorkflow(SubWorkflowChain.java:51)
2021-03-24T21:35:30.393404949Z at org.primeframework.mvc.workflow.StaticResourceWorkflow.perform(StaticResourceWorkflow.java:97)
2021-03-24T21:35:30.393412549Z at org.primeframework.mvc.workflow.SubWorkflowChain.continueWorkflow(SubWorkflowChain.java:51)
2021-03-24T21:35:30.393419250Z at org.primeframework.mvc.parameter.RequestBodyWorkflow.perform(RequestBodyWorkflow.java:89)
2021-03-24T21:35:30.393426450Z at org.primeframework.mvc.workflow.SubWorkflowChain.continueWorkflow(SubWorkflowChain.java:51)
2021-03-24T21:35:30.393434150Z at org.primeframework.mvc.security.DefaultSavedRequestWorkflow.perform(DefaultSavedRequestWorkflow.java:64)
2021-03-24T21:35:30.393443250Z at org.primeframework.mvc.workflow.SubWorkflowChain.continueWorkflow(SubWorkflowChain.java:51)
2021-03-24T21:35:30.393450750Z at io.fusionauth.app.primeframework.CORSFilter.doFilter(CORSFilter.java:262)
2021-03-24T21:35:30.393457651Z at io.fusionauth.app.primeframework.CORSRequestWorkflow.perform(CORSRequestWorkflow.java:49)
2021-03-24T21:35:30.393464351Z at org.primeframework.mvc.workflow.SubWorkflowChain.continueWorkflow(SubWorkflowChain.java:51)
2021-03-24T21:35:30.393471151Z at io.fusionauth.app.primeframework.FusionAuthMVCWorkflow.perform(FusionAuthMVCWorkflow.java:88)
2021-03-24T21:35:30.393478351Z at org.primeframework.mvc.workflow.DefaultWorkflowChain.continueWorkflow(DefaultWorkflowChain.java:44)
2021-03-24T21:35:30.393485151Z at org.primeframework.mvc.servlet.FilterWorkflowChain.continueWorkflow(FilterWorkflowChain.java:50)
2021-03-24T21:35:30.393498152Z at org.primeframework.mvc.servlet.PrimeFilter.doFilter(PrimeFilter.java:78)
2021-03-24T21:35:30.393505452Z at com.inversoft.maintenance.servlet.MaintenanceModePrimeFilter.doFilter(MaintenanceModePrimeFilter.java:59)
2021-03-24T21:35:30.393512152Z at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2021-03-24T21:35:30.393519252Z at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2021-03-24T21:35:30.393526252Z at com.inversoft.servlet.UTF8Filter.doFilter(UTF8Filter.java:27)
2021-03-24T21:35:30.393533253Z at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2021-03-24T21:35:30.393539953Z at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2021-03-24T21:35:30.393546553Z at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
2021-03-24T21:35:30.393553353Z at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
2021-03-24T21:35:30.393575654Z at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:544)
2021-03-24T21:35:30.393582554Z at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
2021-03-24T21:35:30.393589554Z at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
2021-03-24T21:35:30.393596054Z at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
2021-03-24T21:35:30.393602954Z at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:353)
2021-03-24T21:35:30.393609855Z at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:616)
2021-03-24T21:35:30.393616855Z at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
2021-03-24T21:35:30.393624355Z at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831)
2021-03-24T21:35:30.393631355Z at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1629)
2021-03-24T21:35:30.393638255Z at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
2021-03-24T21:35:30.393645055Z at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
2021-03-24T21:35:30.393651956Z at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
2021-03-24T21:35:30.393658856Z at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
2021-03-24T21:35:30.393665756Z at java.base/java.lang.Thread.run(Thread.java:832)
2021-03-24T21:35:30.393672556Z Caused by: org.apache.ibatis.exceptions.PersistenceException:
2021-03-24T21:35:30.393679456Z ### Error querying database. Cause: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 2000ms.
2021-03-24T21:35:30.393691957Z ### The error may exist in io/fusionauth/api/domain/TenantMapper.xml
2021-03-24T21:35:30.393698857Z ### The error may involve io.fusionauth.api.domain.TenantMapper.retrieveAll
2021-03-24T21:35:30.393705557Z ### The error occurred while executing a query
2021-03-24T21:35:30.393712057Z ### Cause: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 2000ms.
2021-03-24T21:35:30.393718857Z at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
2021-03-24T21:35:30.393725458Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:149)
2021-03-24T21:35:30.393732358Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
2021-03-24T21:35:30.393739158Z at jdk.internal.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
2021-03-24T21:35:30.393745958Z at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2021-03-24T21:35:30.393752658Z at java.base/java.lang.reflect.Method.invoke(Method.java:564)
2021-03-24T21:35:30.393769759Z at org.apache.ibatis.session.SqlSessionManager$SqlSessionInterceptor.invoke(SqlSessionManager.java:357)
2021-03-24T21:35:30.393773459Z at com.sun.proxy.$Proxy46.selectList(Unknown Source)
2021-03-24T21:35:30.393777159Z at org.apache.ibatis.session.SqlSessionManager.selectList(SqlSessionManager.java:206)
2021-03-24T21:35:30.393780859Z at org.apache.ibatis.binding.MapperMethod.executeForMany(MapperMethod.java:147)
2021-03-24T21:35:30.393784559Z at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:80)
2021-03-24T21:35:30.393788659Z at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:93)
2021-03-24T21:35:30.393792459Z at com.sun.proxy.$Proxy63.retrieveAll(Unknown Source)
2021-03-24T21:35:30.393796159Z at io.fusionauth.api.service.system.DefaultTenantService.retrieveAll(DefaultTenantService.java:220)
2021-03-24T21:35:30.393799960Z at io.fusionauth.app.action.BaseThemedAction.<init>(BaseThemedAction.java:89)
2021-03-24T21:35:30.393803860Z at io.fusionauth.app.action.oauth2.BaseOAuthAction.<init>(BaseOAuthAction.java:149)
2021-03-24T21:35:30.393807560Z at io.fusionauth.app.action.oauth2.AuthorizeAction.<init>(AuthorizeAction.java:59)
2021-03-24T21:35:30.393811360Z at io.fusionauth.app.action.oauth2.AuthorizeAction$$FastClassByGuice$$c726b99d.newInstance(<generated>)
2021-03-24T21:35:30.393815460Z at com.google.inject.internal.DefaultConstructionProxyFactory$FastClassProxy.newInstance(DefaultConstructionProxyFactory.java:89)
2021-03-24T21:35:30.393819260Z at com.google.inject.internal.ConstructorInjector.provision(ConstructorInjector.java:114)
2021-03-24T21:35:30.393822960Z at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:91)
2021-03-24T21:35:30.393826660Z at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:306)
2021-03-24T21:35:30.393833860Z at com.google.inject.internal.InjectorImpl$1.get(InjectorImpl.java:1094)
2021-03-24T21:35:30.393837660Z ... 39 common frames omitted
2021-03-24T21:35:30.393841361Z Caused by: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 2000ms.
2021-03-24T21:35:30.393845161Z at com.zaxxer.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:697)
2021-03-24T21:35:30.393848861Z at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:196)
2021-03-24T21:35:30.393852761Z at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:161)
2021-03-24T21:35:30.393856561Z at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:100)
2021-03-24T21:35:30.393860261Z at org.apache.ibatis.transaction.jdbc.JdbcTransaction.openConnection(JdbcTransaction.java:138)
2021-03-24T21:35:30.393863961Z at org.apache.ibatis.transaction.jdbc.JdbcTransaction.getConnection(JdbcTransaction.java:60)
2021-03-24T21:35:30.393867661Z at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:336)
2021-03-24T21:35:30.393871261Z at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:86)
2021-03-24T21:35:30.393874961Z at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
2021-03-24T21:35:30.393878662Z at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:324)
2021-03-24T21:35:30.393882662Z at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
2021-03-24T21:35:30.393886362Z at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
2021-03-24T21:35:30.393890062Z at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
2021-03-24T21:35:30.393893662Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)
2021-03-24T21:35:30.393897462Z ... 60 common frames omitted
2021-03-24T21:35:30.393900962Z Caused by: org.postgresql.util.PSQLException: This connection has been closed.
2021-03-24T21:35:30.393904562Z at org.postgresql.jdbc.PgConnection.checkClosed(PgConnection.java:865)
2021-03-24T21:35:30.393908262Z at org.postgresql.jdbc.PgConnection.setNetworkTimeout(PgConnection.java:1647)
2021-03-24T21:35:30.393911962Z at com.zaxxer.hikari.pool.PoolBase.setNetworkTimeout(PoolBase.java:552)
2021-03-24T21:35:30.393915563Z at com.zaxxer.hikari.pool.PoolBase.isConnectionAlive(PoolBase.java:168)
2021-03-24T21:35:30.393919163Z at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:185)
2021-03-24T21:35:30.393922863Z at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:161)
2021-03-24T21:35:30.393926463Z at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:100)
2021-03-24T21:35:30.393933063Z at org.apache.ibatis.transaction.jdbc.JdbcTransaction.openConnection(JdbcTransaction.java:138)
2021-03-24T21:35:30.393936963Z at org.apache.ibatis.transaction.jdbc.JdbcTransaction.getConnection(JdbcTransaction.java:60)
2021-03-24T21:35:30.393940763Z at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:336)
2021-03-24T21:35:30.393944463Z at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:86)
2021-03-24T21:35:30.393948063Z at org.apache.ibatis.executor.SimpleExecutor.doQuery(SimpleExecutor.java:62)
2021-03-24T21:35:30.393951763Z at org.apache.ibatis.executor.BaseExecutor.queryFromDatabase(BaseExecutor.java:324)
2021-03-24T21:35:30.393955464Z at org.apache.ibatis.executor.BaseExecutor.query(BaseExecutor.java:156)
2021-03-24T21:35:30.393959064Z at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:109)
2021-03-24T21:35:30.393962764Z at org.apache.ibatis.executor.CachingExecutor.query(CachingExecutor.java:83)
2021-03-24T21:35:30.393966464Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:147)
2021-03-24T21:35:30.393970164Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
2021-03-24T21:35:30.393973864Z at org.apache.ibatis.session.defaults.DefaultSqlSession.selectOne(DefaultSqlSession.java:76)
2021-03-24T21:35:30.393977864Z at jdk.internal.reflect.GeneratedMethodAccessor47.invoke(Unknown Source)
2021-03-24T21:35:30.393981564Z at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2021-03-24T21:35:30.393985364Z at java.base/java.lang.reflect.Method.invoke(Method.java:564)
2021-03-24T21:35:30.393988964Z at org.apache.ibatis.session.SqlSessionManager$SqlSessionInterceptor.invoke(SqlSessionManager.java:357)
2021-03-24T21:35:30.393992765Z at com.sun.proxy.$Proxy46.selectOne(Unknown Source)
2021-03-24T21:35:30.393996365Z at org.apache.ibatis.session.SqlSessionManager.selectOne(SqlSessionManager.java:166)
2021-03-24T21:35:30.393999965Z at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:87)
2021-03-24T21:35:30.394003665Z at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:93)
2021-03-24T21:35:30.394007265Z at com.sun.proxy.$Proxy54.retrieve(Unknown Source)
2021-03-24T21:35:30.394010965Z at io.fusionauth.api.service.cache.SystemConfigurationCacheLoader.internalLoad(SystemConfigurationCacheLoader.java:43)
2021-03-24T21:35:30.394014665Z at com.inversoft.cache.BaseCacheLoader.load(BaseCacheLoader.java:21)
2021-03-24T21:35:30.394018365Z at io.fusionauth.api.service.cache.SystemConfigurationCacheLoader.run(SystemConfigurationCacheLoader.java:38)
2021-03-24T21:35:30.394022065Z at com.inversoft.scheduler.InjectableRunnable.run(InjectableRunnable.java:37)
2021-03-24T21:35:30.394025765Z at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
2021-03-24T21:35:30.394032466Z at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
2021-03-24T21:35:30.394036266Z at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
2021-03-24T21:35:30.394040066Z at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
2021-03-24T21:35:30.394043766Z at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
2021-03-24T21:35:30.394047566Z ... 1 common frames omitted
2021-03-24T21:35:30.394051066Z 2021-03-24 9:35:30.392 PM ERROR org.primeframework.mvc.servlet.PrimeFilter - Error encountered
2021-03-24T21:35:30.394054766Z java.lang.NullPointerException: null
2021-03-24T21:35:30.394058366Z at org.primeframework.mvc.message.l10n.ResourceBundleMessageProvider.findMessage(ResourceBundleMessageProvider.java:129)
2021-03-24T21:35:30.394062166Z at org.primeframework.mvc.message.l10n.ResourceBundleMessageProvider.getOptionalMessage(ResourceBundleMessageProvider.java:88)
2021-03-24T21:35:30.394065966Z at org.primeframework.mvc.message.l10n.ResourceBundleMessageProvider.getMessage(ResourceBundleMessageProvider.java:76)
2021-03-24T21:35:30.394070067Z at io.fusionauth.app.primeframework.error.ExceptionExceptionHandler.handle(ExceptionExceptionHandler.java:48)
2021-03-24T21:35:30.394073967Z at io.fusionauth.app.primeframework.error.ExceptionExceptionHandler.handle(ExceptionExceptionHandler.java:22)
2021-03-24T21:35:30.394077667Z at org.primeframework.mvc.workflow.DefaultExceptionHandler.handle(DefaultExceptionHandler.java:39)
2021-03-24T21:35:30.394081467Z at io.fusionauth.app.primeframework.FusionAuthMVCWorkflow.perform(FusionAuthMVCWorkflow.java:90)
2021-03-24T21:35:30.394085167Z at org.primeframework.mvc.workflow.DefaultWorkflowChain.continueWorkflow(DefaultWorkflowChain.java:44)
2021-03-24T21:35:30.394088867Z at org.primeframework.mvc.servlet.FilterWorkflowChain.continueWorkflow(FilterWorkflowChain.java:50)
2021-03-24T21:35:30.394092567Z at org.primeframework.mvc.servlet.PrimeFilter.doFilter(PrimeFilter.java:78)
2021-03-24T21:35:30.394096267Z at com.inversoft.maintenance.servlet.MaintenanceModePrimeFilter.doFilter(MaintenanceModePrimeFilter.java:59)
2021-03-24T21:35:30.394099967Z at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2021-03-24T21:35:30.394103667Z at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2021-03-24T21:35:30.394107468Z at com.inversoft.servlet.UTF8Filter.doFilter(UTF8Filter.java:27)
2021-03-24T21:35:30.394111068Z at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
2021-03-24T21:35:30.394114868Z at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
2021-03-24T21:35:30.394118568Z at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
2021-03-24T21:35:30.394125068Z at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
2021-03-24T21:35:30.394128868Z at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:544)
2021-03-24T21:35:30.394132568Z at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
2021-03-24T21:35:30.394136268Z at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
2021-03-24T21:35:30.394139968Z at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
2021-03-24T21:35:30.394143569Z at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:353)
2021-03-24T21:35:30.394147269Z at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:616)
2021-03-24T21:35:30.394150969Z at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
2021-03-24T21:35:30.394154969Z at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831)
2021-03-24T21:35:30.394158669Z at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1629)
2021-03-24T21:35:30.394162369Z at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
2021-03-24T21:35:30.394166069Z at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
2021-03-24T21:35:30.394169769Z at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
2021-03-24T21:35:30.394173469Z at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
2021-03-24T21:35:30.394177169Z at java.base/java.lang.Thread.run(Thread.java:832) -
Hi @john-mooney!
My experience is limited in regards to an Azure cloud deployment, but I will try and assist as best able. I do have a few questions to ask to better understand your issue.
- Do you happen to have any other logs which are outputting errors? If you had full logs of the database, app service, or anything else pertinent, that might be helpful in debugging.
- Do the logs show that all of your database connections are queued? There is a db connection pool that should be available, but if every connection is queued up/waiting, that might be telling.
- Does this happen only during certain times of the day and not others? At specified intervals? Under high demand/peak demand?
- How many active and total users do you have on this system?
- How many active and total tenants do you have on this system?
- How are you connected to your database? Azure lists a few different ways to configure a PostgreSQL server (server, flexible, hyper-scale). Additional details about your configuration could prove useful.
- Any other pertinent details about your network configuration and architecture could prove useful here.
- Are you setting any FusionAuth environment variables, if so which ones?
Thanks,
Josh