Metabase Installation Fail

Hi,

I freshly installed the latest version of Metabase (.jar) and tried running it on my Windows PC (I have java 17 version). it prompts error " Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database!".

I tried running it as admin user, re-installing the jar, adding trustServerCertificate = true when running the command, nothing seems to work.

Thanks for the assistance.

PFA the error stack:
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! [See nested exception: java.sql.SQLException: Connections could not be acquired from the underlying database!]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:783)
at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:71)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doCheckin(JobStoreSupport.java:3322)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.manage(JobStoreSupport.java:3935)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$ClusterManager.initialize(JobStoreSupport.java:3920)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.schedulerStarted(JobStoreSupport.java:692)
at org.quartz.core.QuartzScheduler.start(QuartzScheduler.java:539)
at org.quartz.impl.StdScheduler.start(StdScheduler.java:142)
at clojurewerkz.quartzite.scheduler$start.invokeStatic(scheduler.clj:31)
at clojurewerkz.quartzite.scheduler$start.invoke(scheduler.clj:27)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask$with_connection_STAR___46784$with_transaction_STAR___46785.invoke(custom_migrations.clj:165)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at metabase.db.connection$do_transaction$thunk__32126.invoke(connection.clj:150)
at metabase.db.connection$do_transaction.invokeStatic(connection.clj:165)
at metabase.db.connection$do_transaction.invoke(connection.clj:146)
at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invokeStatic(connection.clj:199)
at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invoke(connection.clj:172)
at clojure.lang.AFn.applyToHelper(AFn.java:165)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.core$partial$fn__5908.invoke(core.clj:2643)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17875.invoke(threaded.clj:71)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2588)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:44)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invokeStatic(connection.clj:249)
at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invoke(connection.clj:245)
at clojure.lang.AFn.applyToHelper(AFn.java:165)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.core$partial$fn__5908.invoke(core.clj:2643)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:58)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:195)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask$with_connection_STAR___46784.invoke(custom_migrations.clj:161)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invokeStatic(connection.clj:13)
at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invoke(connection.clj:11)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17873.invoke(threaded.clj:70)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2587)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:43)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
at toucan2.connection$do_with_connection_primary_method_.invokeStatic(connection.clj:204)
at toucan2.connection$do_with_connection_primary_method_.invoke(connection.clj:194)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17873.invoke(threaded.clj:70)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2587)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:43)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask.execute(custom_migrations.clj:161)
at liquibase.change.custom.CustomChangeWrapper.generateStatements(CustomChangeWrapper.java:168)
at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1267)
at metabase.db.liquibase.h2.proxy$liquibase.database.core.H2Database$ff19274a.executeStatements(Unknown Source)
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:718)
at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:61)
at liquibase.changelog.ChangeLogIterator$2.lambda$null$0(ChangeLogIterator.java:111)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.changelog.ChangeLogIterator$2.lambda$run$1(ChangeLogIterator.java:111)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Scope.child(Scope.java:260)
at liquibase.changelog.ChangeLogIterator$2.run(ChangeLogIterator.java:94)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Scope.child(Scope.java:260)
at liquibase.Scope.child(Scope.java:264)
at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:68)
at liquibase.command.core.AbstractUpdateCommandStep.lambda$run$0(AbstractUpdateCommandStep.java:102)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.command.core.AbstractUpdateCommandStep.run(AbstractUpdateCommandStep.java:99)
at liquibase.command.CommandScope.execute(CommandScope.java:212)
at liquibase.Liquibase.lambda$update$0(Liquibase.java:237)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Liquibase.runInScope(Liquibase.java:1618)
at liquibase.Liquibase.update(Liquibase.java:229)
at liquibase.Liquibase.update(Liquibase.java:213)
at liquibase.Liquibase.update(Liquibase.java:198)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invokeStatic(liquibase.clj:239)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invoke(liquibase.clj:221)
at metabase.db.setup$migrate_BANG_$fn__49980.invoke(setup.clj:80)
at metabase.db.liquibase$do_with_liquibase$f_STAR___47748.invoke(liquibase.clj:134)
at metabase.db.liquibase$do_with_liquibase.invokeStatic(liquibase.clj:137)
at metabase.db.liquibase$do_with_liquibase.invoke(liquibase.clj:125)
at metabase.db.setup$migrate_BANG_.invokeStatic(setup.clj:75)
at metabase.db.setup$migrate_BANG_.doInvoke(setup.clj:56)
at clojure.lang.RestFn.invoke(RestFn.java:445)
at metabase.db.setup$run_schema_migrations_BANG_.invokeStatic(setup.clj:148)
at metabase.db.setup$run_schema_migrations_BANG_.invoke(setup.clj:142)
at metabase.db.setup$setup_db_BANG_$fn__50010$fn__50011.invoke(setup.clj:166)
at metabase.util.jvm$do_with_us_locale.invokeStatic(jvm.clj:239)
at metabase.util.jvm$do_with_us_locale.invoke(jvm.clj:225)
at metabase.db.setup$setup_db_BANG_$fn__50010.invoke(setup.clj:161)
at metabase.db.setup$setup_db_BANG_.invokeStatic(setup.clj:160)
at metabase.db.setup$setup_db_BANG_.invoke(setup.clj:154)
at metabase.db$setup_db_BANG_$fn__50024.invoke(db.clj:69)
at metabase.db$setup_db_BANG_.invokeStatic(db.clj:64)
at metabase.db$setup_db_BANG_.invoke(db.clj:55)
at metabase.core$init_BANG__STAR_.invokeStatic(core.clj:113)
at metabase.core$init_BANG__STAR_.invoke(core.clj:98)
at metabase.core$init_BANG_.invokeStatic(core.clj:156)
at metabase.core$init_BANG_.invoke(core.clj:151)
at metabase.core$start_normally.invokeStatic(core.clj:168)
at metabase.core$start_normally.invoke(core.clj:162)
at metabase.core$entrypoint.invokeStatic(core.clj:201)
at metabase.core$entrypoint.doInvoke(core.clj:195)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.Var.applyTo(Var.java:705)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$apply.invoke(core.clj:662)
at metabase.bootstrap$main.invokeStatic(bootstrap.clj:31)
at metabase.bootstrap$main.doInvoke(bootstrap.clj:28)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at metabase.bootstrap.main(Unknown Source)
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at metabase.db.connection.ApplicationDB.getConnection(connection.clj:47)
at metabase.task.ConnectionProvider.getConnection(task.clj:106)
at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:108)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:780)
... 230 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1507)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 235 more
Caused by: java.io.IOException: The process cannot access the file because another process has locked a portion of the file
at java.base/java.io.FileInputStream.readBytes(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:276)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:106)
at metabase.db.update_h2$head.invokeStatic(update_h2.clj:24)
at metabase.db.update_h2$head.invoke(update_h2.clj:18)
at metabase.db.update_h2$db_version.invokeStatic(update_h2.clj:45)
at metabase.db.update_h2$db_version.invoke(update_h2.clj:38)
at metabase.db.update_h2$update_if_needed_BANG
.invokeStatic(update_h2.clj:95)
at metabase.db.update_h2$update_if_needed_BANG
.invoke(update_h2.clj:90)
at metabase.db.data_source.DataSource.getConnection(data_source.clj:29)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:161)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:213)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1176)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1163)
at com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1908)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
2024-02-22 09:35:01,402 INFO core.QuartzScheduler :: Scheduler MetabaseScheduler_$MARIE-LYNE1708590873183 started.
2024-02-22 09:35:03,275 ERROR core.ErrorLogger :: An error occurred while scanning for the next triggers to fire.
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! [See nested exception: java.sql.SQLException: Connections could not be acquired from the underlying database!]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:783)
at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:71)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3861)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.acquireNextTriggers(JobStoreSupport.java:2802)
at org.quartz.core.QuartzSchedulerThread.run(QuartzSchedulerThread.java:287)
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at metabase.db.connection.ApplicationDB.getConnection(connection.clj:47)
at metabase.task.ConnectionProvider.getConnection(task.clj:106)
at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:108)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:780)
... 4 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1507)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 9 more
Caused by: java.io.IOException: The process cannot access the file because another process has locked a portion of the file
at java.base/java.io.FileInputStream.readBytes(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:276)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:106)
at metabase.db.update_h2$head.invokeStatic(update_h2.clj:24)
at metabase.db.update_h2$head.invoke(update_h2.clj:18)
at metabase.db.update_h2$db_version.invokeStatic(update_h2.clj:45)
at metabase.db.update_h2$db_version.invoke(update_h2.clj:38)
at metabase.db.update_h2$update_if_needed_BANG
.invokeStatic(update_h2.clj:95)
at metabase.db.update_h2$update_if_needed_BANG_.invoke(update_h2.clj:90)
at metabase.db.data_source.DataSource.getConnection(data_source.clj:29)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:161)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:213)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1176)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1163)
at com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1908)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
2024-02-22 09:35:03,275 ERROR jdbcjobstore.JobStoreTX :: MisfireHandler: Error handling misfires: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database!
org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! [See nested exception: java.sql.SQLException: Connections could not be acquired from the underlying database!]
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:783)
at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:71)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.doRecoverMisfires(JobStoreSupport.java:3246)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.manage(JobStoreSupport.java:4012)
at org.quartz.impl.jdbcjobstore.JobStoreSupport$MisfireHandler.run(JobStoreSupport.java:4033)
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at metabase.db.connection.ApplicationDB.getConnection(connection.clj:47)
at metabase.task.ConnectionProvider.getConnection(task.clj:106)
at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:108)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:780)
... 4 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1507)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 9 more
Caused by: java.io.IOException: The process cannot access the file because another process has locked a portion of the file
at java.base/java.io.FileInputStream.readBytes(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:276)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:106)
at metabase.db.update_h2$head.invokeStatic(update_h2.clj:24)
at metabase.db.update_h2$head.invoke(update_h2.clj:18)
at metabase.db.update_h2$db_version.invokeStatic(update_h2.clj:45)
at metabase.db.update_h2$db_version.invoke(update_h2.clj:38)
at metabase.db.update_h2$update_if_needed_BANG_.invokeStatic(update_h2.clj:95)
at metabase.db.update_h2$update_if_needed_BANG_.invoke(update_h2.clj:90)
at metabase.db.data_source.DataSource.getConnection(data_source.clj:29)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:161)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:213)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1176)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1163)
at com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1908)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
2024-02-22 09:35:03,293 ERROR liquibase.changelog :: ChangeSet migrations/001_update_migrations.yaml::v46.00-086::calherries encountered an exception.
2024-02-22 09:35:03,305 ERROR metabase.core :: Metabase Initialization FAILED
liquibase.exception.CommandExecutionException: liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v46.00-086::calherries:
Reason: clojure.lang.ExceptionInfo: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.h2.jdbc.JdbcConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
at liquibase.command.CommandScope.execute(CommandScope.java:235)
at liquibase.Liquibase.lambda$update$0(Liquibase.java:237)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Liquibase.runInScope(Liquibase.java:1618)
at liquibase.Liquibase.update(Liquibase.java:229)
at liquibase.Liquibase.update(Liquibase.java:213)
at liquibase.Liquibase.update(Liquibase.java:198)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invokeStatic(liquibase.clj:239)
at metabase.db.liquibase$migrate_up_if_needed_BANG_.invoke(liquibase.clj:221)
at metabase.db.setup$migrate_BANG_$fn__49980.invoke(setup.clj:80)
at metabase.db.liquibase$do_with_liquibase$f_STAR___47748.invoke(liquibase.clj:134)
at metabase.db.liquibase$do_with_liquibase.invokeStatic(liquibase.clj:137)
at metabase.db.liquibase$do_with_liquibase.invoke(liquibase.clj:125)
at metabase.db.setup$migrate_BANG_.invokeStatic(setup.clj:75)
at metabase.db.setup$migrate_BANG_.doInvoke(setup.clj:56)
at clojure.lang.RestFn.invoke(RestFn.java:445)
at metabase.db.setup$run_schema_migrations_BANG_.invokeStatic(setup.clj:148)
at metabase.db.setup$run_schema_migrations_BANG_.invoke(setup.clj:142)
at metabase.db.setup$setup_db_BANG_$fn__50010$fn__50011.invoke(setup.clj:166)
at metabase.util.jvm$do_with_us_locale.invokeStatic(jvm.clj:239)
at metabase.util.jvm$do_with_us_locale.invoke(jvm.clj:225)
at metabase.db.setup$setup_db_BANG_$fn__50010.invoke(setup.clj:161)
at metabase.db.setup$setup_db_BANG_.invokeStatic(setup.clj:160)
at metabase.db.setup$setup_db_BANG_.invoke(setup.clj:154)
at metabase.db$setup_db_BANG_$fn__50024.invoke(db.clj:69)
at metabase.db$setup_db_BANG_.invokeStatic(db.clj:64)
at metabase.db$setup_db_BANG_.invoke(db.clj:55)
at metabase.core$init_BANG__STAR_.invokeStatic(core.clj:113)
at metabase.core$init_BANG__STAR_.invoke(core.clj:98)
at metabase.core$init_BANG_.invokeStatic(core.clj:156)
at metabase.core$init_BANG_.invoke(core.clj:151)
at metabase.core$start_normally.invokeStatic(core.clj:168)
at metabase.core$start_normally.invoke(core.clj:162)
at metabase.core$entrypoint.invokeStatic(core.clj:201)
at metabase.core$entrypoint.doInvoke(core.clj:195)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.Var.applyTo(Var.java:705)
at clojure.core$apply.invokeStatic(core.clj:667)
at clojure.core$apply.invoke(core.clj:662)
at metabase.bootstrap$main.invokeStatic(bootstrap.clj:31)
at metabase.bootstrap$main.doInvoke(bootstrap.clj:28)
at clojure.lang.RestFn.invoke(RestFn.java:397)
at clojure.lang.AFn.applyToHelper(AFn.java:152)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at metabase.bootstrap.main(Unknown Source)
Caused by: liquibase.exception.LiquibaseException: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v46.00-086::calherries:
Reason: clojure.lang.ExceptionInfo: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.h2.jdbc.JdbcConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:123)
at liquibase.command.core.AbstractUpdateCommandStep.lambda$run$0(AbstractUpdateCommandStep.java:102)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.command.core.AbstractUpdateCommandStep.run(AbstractUpdateCommandStep.java:99)
at liquibase.command.CommandScope.execute(CommandScope.java:212)
... 49 more
Caused by: liquibase.exception.MigrationFailedException: Migration failed for changeset migrations/001_update_migrations.yaml::v46.00-086::calherries:
Reason: clojure.lang.ExceptionInfo: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.h2.jdbc.JdbcConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:761)
at liquibase.changelog.visitor.UpdateVisitor.visit(UpdateVisitor.java:61)
at liquibase.changelog.ChangeLogIterator$2.lambda$null$0(ChangeLogIterator.java:111)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.changelog.ChangeLogIterator$2.lambda$run$1(ChangeLogIterator.java:111)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Scope.child(Scope.java:260)
at liquibase.changelog.ChangeLogIterator$2.run(ChangeLogIterator.java:94)
at liquibase.Scope.lambda$child$0(Scope.java:194)
at liquibase.Scope.child(Scope.java:203)
at liquibase.Scope.child(Scope.java:193)
at liquibase.Scope.child(Scope.java:172)
at liquibase.Scope.child(Scope.java:260)
at liquibase.Scope.child(Scope.java:264)
at liquibase.changelog.ChangeLogIterator.run(ChangeLogIterator.java:68)
... 56 more
Caused by: clojure.lang.ExceptionInfo: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! {:toucan2/context-trace [["resolve connection" {:toucan2.connection/connectable org.h2.jdbc.JdbcConnection}] ["resolve connection" {:toucan2.connection/connectable nil}]]}
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:783)
at org.quartz.impl.jdbcjobstore.JobStoreTX.getNonManagedTXConnection(JobStoreTX.java:71)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.executeInNonManagedTXLock(JobStoreSupport.java:3854)
at org.quartz.impl.jdbcjobstore.JobStoreTX.executeInLock(JobStoreTX.java:93)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.removeTrigger(JobStoreSupport.java:1428)
at org.quartz.core.QuartzScheduler.unscheduleJob(QuartzScheduler.java:1065)
at org.quartz.impl.StdScheduler.unscheduleJob(StdScheduler.java:311)
at clojurewerkz.quartzite.scheduler$delete_trigger.invokeStatic(scheduler.clj:92)
at clojurewerkz.quartzite.scheduler$delete_trigger.invoke(scheduler.clj:88)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask$with_connection_STAR___46784$with_transaction_STAR___46785.invoke(custom_migrations.clj:166)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at metabase.db.connection$do_transaction$thunk__32126.invoke(connection.clj:150)
at metabase.db.connection$do_transaction.invokeStatic(connection.clj:165)
at metabase.db.connection$do_transaction.invoke(connection.clj:146)
at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invokeStatic(connection.clj:199)
at metabase.db.connection$do_with_transaction_primary_method_java_sql_Connection.invoke(connection.clj:172)
at clojure.lang.AFn.applyToHelper(AFn.java:165)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.core$partial$fn__5908.invoke(core.clj:2643)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17875.invoke(threaded.clj:71)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2588)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:44)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invokeStatic(connection.clj:249)
at toucan2.connection$do_with_transaction_around_method_toucan2_connection_default.invoke(connection.clj:245)
at clojure.lang.AFn.applyToHelper(AFn.java:165)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.core$partial$fn__5908.invoke(core.clj:2643)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:58)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:195)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask$with_connection_STAR___46784.invoke(custom_migrations.clj:161)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at toucan2.connection$bind_current_connectable_fn$fn__20781.invoke(connection.clj:104)
at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invokeStatic(connection.clj:13)
at toucan2.jdbc.connection$do_with_connection_primary_method_java_sql_Connection.invoke(connection.clj:11)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17873.invoke(threaded.clj:70)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2587)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:43)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
at toucan2.connection$do_with_connection_primary_method
.invokeStatic(connection.clj:204)
at toucan2.connection$do_with_connection_primary_method
.invoke(connection.clj:194)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.combo.threaded$fn__17871$fn__17872$fn__17873.invoke(threaded.clj:70)
at methodical.impl.combo.threaded$reducer_fn$fn__17841$fn__17845.invoke(threaded.clj:23)
at clojure.lang.ArrayChunk.reduce(ArrayChunk.java:58)
at clojure.core.protocols$fn__8244.invokeStatic(protocols.clj:136)
at clojure.core.protocols$fn__8244.invoke(protocols.clj:124)
at clojure.core.protocols$fn__8204$G__8199__8213.invoke(protocols.clj:19)
at clojure.core.protocols$seq_reduce.invokeStatic(protocols.clj:31)
at clojure.core.protocols$fn__8236.invokeStatic(protocols.clj:75)
at clojure.core.protocols$fn__8236.invoke(protocols.clj:75)
at clojure.core.protocols$fn__8178$G__8173__8191.invoke(protocols.clj:13)
at clojure.core$reduce.invokeStatic(core.clj:6886)
at clojure.core$reduce.invoke(core.clj:6868)
at methodical.impl.combo.threaded$reducer_fn$fn__17841.invoke(threaded.clj:21)
at clojure.core$comp$fn__5876.invoke(core.clj:2587)
at methodical.impl.combo.threaded$combine_with_threader$fn__17851.invoke(threaded.clj:43)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invokeStatic(connection.clj:118)
at toucan2.connection$do_with_connection_around_method_toucan2_connection_default.invoke(connection.clj:106)
at clojure.lang.AFn.applyToHelper(AFn.java:160)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:436)
at clojure.core$partial$fn__5908.invoke(core.clj:2642)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at methodical.impl.standard$invoke_multifn.invokeStatic(standard.clj:55)
at methodical.impl.standard$invoke_multifn.invoke(standard.clj:47)
at methodical.impl.standard.StandardMultiFn.invoke(standard.clj:193)
at metabase.db.custom_migrations.DeleteAbandonmentEmailTask.execute(custom_migrations.clj:161)
at liquibase.change.custom.CustomChangeWrapper.generateStatements(CustomChangeWrapper.java:168)
at liquibase.database.AbstractJdbcDatabase.executeStatements(AbstractJdbcDatabase.java:1267)
at metabase.db.liquibase.h2.proxy$liquibase.database.core.H2Database$ff19274a.executeStatements(Unknown Source)
at liquibase.changelog.ChangeSet.execute(ChangeSet.java:718)
... 76 more
Caused by: org.quartz.JobPersistenceException: Failed to obtain DB connection from data source 'db': java.sql.SQLException: Connections could not be acquired from the underlying database! [See nested exception: java.sql.SQLException: Connections could not be acquired from the underlying database!]
... 230 more
Caused by: java.sql.SQLException: Connections could not be acquired from the underlying database!
at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:118)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:692)
at com.mchange.v2.c3p0.impl.AbstractPoolBackedDataSource.getConnection(AbstractPoolBackedDataSource.java:140)
at metabase.db.connection.ApplicationDB.getConnection(connection.clj:47)
at metabase.task.ConnectionProvider.getConnection(task.clj:106)
at org.quartz.utils.DBConnectionManager.getConnection(DBConnectionManager.java:108)
at org.quartz.impl.jdbcjobstore.JobStoreSupport.getConnection(JobStoreSupport.java:780)
... 229 more
Caused by: com.mchange.v2.resourcepool.CannotAcquireResourceException: A ResourcePool could not acquire a resource from its primary factory or source.
at com.mchange.v2.resourcepool.BasicResourcePool.awaitAvailable(BasicResourcePool.java:1507)
at com.mchange.v2.resourcepool.BasicResourcePool.prelimCheckoutResource(BasicResourcePool.java:644)
at com.mchange.v2.resourcepool.BasicResourcePool.checkoutResource(BasicResourcePool.java:554)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutAndMarkConnectionInUse(C3P0PooledConnectionPool.java:758)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool.checkoutPooledConnection(C3P0PooledConnectionPool.java:685)
... 234 more
Caused by: java.io.IOException: The process cannot access the file because another process has locked a portion of the file
at java.base/java.io.FileInputStream.readBytes(Native Method)
at java.base/java.io.FileInputStream.read(FileInputStream.java:276)
at java.base/java.io.BufferedInputStream.fill(BufferedInputStream.java:244)
at java.base/java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.base/java.io.BufferedInputStream.read(BufferedInputStream.java:343)
at java.base/java.io.FilterInputStream.read(FilterInputStream.java:106)
at metabase.db.update_h2$head.invokeStatic(update_h2.clj:24)
at metabase.db.update_h2$head.invoke(update_h2.clj:18)
at metabase.db.update_h2$db_version.invokeStatic(update_h2.clj:45)
at metabase.db.update_h2$db_version.invoke(update_h2.clj:38)
at metabase.db.update_h2$update_if_needed_BANG_.invokeStatic(update_h2.clj:95)
at metabase.db.update_h2$update_if_needed_BANG_.invoke(update_h2.clj:90)
at metabase.db.data_source.DataSource.getConnection(data_source.clj:29)
at com.mchange.v2.c3p0.WrapperConnectionPoolDataSource.getPooledConnection(WrapperConnectionPoolDataSource.java:161)
at com.mchange.v2.c3p0.impl.C3P0PooledConnectionPool$1PooledConnectionResourcePoolManager.acquireResource(C3P0PooledConnectionPool.java:213)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquire(BasicResourcePool.java:1176)
at com.mchange.v2.resourcepool.BasicResourcePool.doAcquireAndDecrementPendingAcquiresWithinLockOnSuccess(BasicResourcePool.java:1163)
at com.mchange.v2.resourcepool.BasicResourcePool.access$700(BasicResourcePool.java:44)
at com.mchange.v2.resourcepool.BasicResourcePool$ScatteredAcquireTask.run(BasicResourcePool.java:1908)
at com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:696)
2024-02-22 09:35:03,311 INFO metabase.core :: Metabase Shutting Down ...
2024-02-22 09:35:03,311 INFO metabase.server :: Shutting Down Embedded Jetty Webserver
2024-02-22 09:35:03,336 INFO metabase.core :: Metabase Shutdown COMPLETE

I have a workaround. It's not great but fine for testing new release.

Take a copy of the H2 files from a previous installation.
Run the jar file from a command line as administrator
image

What I did find was that on 2nd run (as non-admin), there was an error about the database being read only. I tried as admin but it still failed.
Then I tried with an old database. Failed as non-admin but worked as admin.