Skip to content
Failed

Console Output

This log is too long to show here, 4,091 KB has been skipped — click to see the complete log
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59)
	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:366)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
	at org.junit.runners.ParentRunner$4.run(ParentRunner.java:331)
	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:79)
	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:329)
	at org.junit.runners.ParentRunner.access$100(ParentRunner.java:66)
	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:293)
	at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:306)
	at org.junit.runners.ParentRunner.run(ParentRunner.java:413)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:112)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:40)
	at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:54)
	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:53)
	at jdk.internal.reflect.GeneratedMethodAccessor65.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:569)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:36)
	at org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
	at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:33)
	at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:92)
	at jdk.proxy1/jdk.proxy1.$Proxy4.processTestClass(Unknown Source)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker$2.run(TestWorker.java:183)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:132)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:103)
	at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:63)
	at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:121)
	at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:71)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
	at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
Delaying...
process.waitForAsync
canceling result
Canceled
Exception in thread "UI Thread @coroutine#2555" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2555), "coroutine#2555":StandaloneCoroutine{Cancelling}@714076a7, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2573" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2573), "coroutine#2573":StandaloneCoroutine{Cancelling}@3aac4433, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2590" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2590), "coroutine#2590":StandaloneCoroutine{Cancelling}@45d480c3, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2617" org.sqlite.SQLiteException: [SQLITE_ERROR] SQL error or missing database (no such table: NodeEvent)
	at org.sqlite.core.DB.newSQLException(DB.java:1179)
	at org.sqlite.core.DB.newSQLException(DB.java:1190)
	at org.sqlite.core.DB.execute(DB.java:988)
	at org.sqlite.jdbc3.JDBC3PreparedStatement.lambda$executeQuery$1(JDBC3PreparedStatement.java:92)
	at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:454)
	at org.sqlite.jdbc3.JDBC3PreparedStatement.executeQuery(JDBC3PreparedStatement.java:87)
	at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
	at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
	at com.ustadmobile.door.jdbc.ext.PreparedStatementExtKt$executeQueryAsyncKmp$2.invokeSuspend(PreparedStatementExt.kt:11)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:111)
	at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:99)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2617), "coroutine#2617":StandaloneCoroutine{Cancelling}@2cb3848f, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2619" java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@a067bb1 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at _COROUTINE._BOUNDARY._(CoroutineDebugging.kt:42)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:235)
	at com.ustadmobile.door.ext.DoorDatabaseExtJvmJsKt.prepareAndUseStatementAsync(DoorDatabaseExtJvmJs.kt:24)
	at com.ustadmobile.core.db.dao.PersonDao_JdbcImpl$findByUidWithPictureAsFlow$1.invokeSuspend(PersonDao_JdbcImpl.kt:836)
	at com.ustadmobile.door.flow.DoorFlowKt$doorFlow$1$1.invokeSuspend(DoorFlow.kt:40)
	at com.ustadmobile.core.account.UstadAccountManager$3$1$1.invokeSuspend(UstadAccountManager.kt:228)
	at kotlinx.coroutines.flow.FlowKt__MergeKt$mapLatest$1.invokeSuspend(Merge.kt:213)
	at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1$2.invokeSuspend(Merge.kt:30)
	at kotlinx.coroutines.flow.internal.ChannelFlow$collectToFun$1.invokeSuspend(ChannelFlow.kt:56)
	at com.ustadmobile.core.account.UstadAccountManager$3$1.invokeSuspend(UstadAccountManager.kt:223)
	at com.ustadmobile.core.util.ext.MutableStateExtKt$whenSubscribed$3.invokeSuspend(MutableStateExt.kt:13)
	at com.ustadmobile.core.account.UstadAccountManager$3.invokeSuspend(UstadAccountManager.kt:222)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2619), "coroutine#2619":StandaloneCoroutine{Cancelling}@e07cda6, Dispatchers.Main]
Caused by: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@a067bb1 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
Exception in thread "UI Thread @coroutine#2653" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(2653), "coroutine#2653":StandaloneCoroutine{Cancelling}@45a24590, Dispatchers.Main]

Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findCourseCommentsByAssignmentUid$1@1e3aa46c
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findCourseCommentsByAssignmentUid$1@657ed8d7
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findCourseCommentsByAssignmentUid$1@2c0d49d0
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@7ae0e52
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@42e202dd
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@1e682538
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@a18baf4Exception in thread "UI Thread @coroutine#4274" java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55cf0703 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at _COROUTINE._BOUNDARY._(CoroutineDebugging.kt:42)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:235)
	at com.ustadmobile.door.ext.DoorDatabaseExtJvmJsKt.prepareAndUseStatementAsync(DoorDatabaseExtJvmJs.kt:24)
	at com.ustadmobile.core.db.dao.CourseAssignmentSubmissionFileDao_JdbcImpl$getBySubmissionUid$1.invokeSuspend(CourseAssignmentSubmissionFileDao_JdbcImpl.kt:104)
	at com.ustadmobile.door.flow.DoorFlowKt$doorFlow$1$1.invokeSuspend(DoorFlow.kt:40)
	at com.ustadmobile.core.viewmodel.clazzassignment.detailoverview.ClazzAssignmentDetailOverviewViewModel$2$3$5$2.invokeSuspend(ClazzAssignmentDetailOverviewViewModel.kt:432)
	at kotlinx.coroutines.flow.FlowKt__MergeKt$mapLatest$1.invokeSuspend(Merge.kt:213)
	at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1$2.invokeSuspend(Merge.kt:30)
	at kotlinx.coroutines.flow.internal.ChannelFlow$collectToFun$1.invokeSuspend(ChannelFlow.kt:56)
	at com.ustadmobile.core.viewmodel.clazzassignment.detailoverview.ClazzAssignmentDetailOverviewViewModel$2$3$5.invokeSuspend(ClazzAssignmentDetailOverviewViewModel.kt:429)
	Suppressed: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55cf0703 is closed!
		at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
		at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
		at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
		at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
		at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
		at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
		at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
		at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
		at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
		at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4228), "coroutine#4228":StandaloneCoroutine{Cancelling}@626bf498, Dispatchers.Main]
Caused by: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55cf0703 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
Exception in thread "UI Thread @coroutine#4340" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4340), "coroutine#4340":StandaloneCoroutine{Cancelling}@1bee36dc, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4372" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4372), "coroutine#4372":StandaloneCoroutine{Cancelling}@6d67cc44, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4402" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4402), "coroutine#4402":StandaloneCoroutine{Cancelling}@57c6f2eb, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4434" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4434), "coroutine#4434":StandaloneCoroutine{Cancelling}@196d8fc9, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4465" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(4465), "coroutine#4465":StandaloneCoroutine{Cancelling}@7c4d9cc9, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5062" java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@69572470 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at _COROUTINE._BOUNDARY._(CoroutineDebugging.kt:42)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:235)
	at com.ustadmobile.door.ext.DoorDatabaseExtJvmJsKt.prepareAndUseStatementAsync(DoorDatabaseExtJvmJs.kt:24)
	at com.ustadmobile.core.db.dao.OfflineItemDao_JdbcImpl$findByContentEntryUid$1.invokeSuspend(OfflineItemDao_JdbcImpl.kt:64)
	at com.ustadmobile.door.flow.DoorFlowKt$doorFlow$1$1.invokeSuspend(DoorFlow.kt:40)
	at com.ustadmobile.core.viewmodel.contententry.detailoverviewtab.ContentEntryDetailOverviewViewModel$2$1$7.invokeSuspend(ContentEntryDetailOverviewViewModel.kt:235)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5053), "coroutine#5053":StandaloneCoroutine{Cancelling}@1e3c8751, Dispatchers.Main]
Caused by: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@69572470 is closed!
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.assertNotClosed(RoomDatabaseJdbcImplHelperCommon.kt:96)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:103)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useConnectionAsync$2$2.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt:237)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
Exception in thread "UI Thread @coroutine#5115" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5115), "coroutine#5115":StandaloneCoroutine{Cancelling}@796f0062, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5132" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5132), "coroutine#5132":StandaloneCoroutine{Cancelling}@6ef8e7fa, Dispatchers.Main]
> Task :core:jvmTest

Exception in thread "UI Thread @coroutine#5516" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5516), "coroutine#5516":StandaloneCoroutine{Cancelling}@50ed4008, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5545" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5545), "coroutine#5545":StandaloneCoroutine{Cancelling}@32d37052, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5573" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5573), "coroutine#5573":StandaloneCoroutine{Cancelling}@44eb1d6, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5595" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5595), "coroutine#5595":StandaloneCoroutine{Cancelling}@7222158c, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5615" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5615), "coroutine#5615":StandaloneCoroutine{Cancelling}@429b9c07, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5637" java.lang.IllegalStateException: destination can not be null
	at com.ustadmobile.core.viewmodel.login.LoginViewModel$1.invokeSuspend(LoginViewModel.kt:125)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(5637), "coroutine#5637":StandaloneCoroutine{Cancelling}@232ad790, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6004" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6004), "coroutine#6004":StandaloneCoroutine{Cancelling}@491385da, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6122" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6122), "coroutine#6122":StandaloneCoroutine{Cancelling}@35e29c41, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6148" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6148), "coroutine#6148":StandaloneCoroutine{Cancelling}@39c97572, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6172" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6172), "coroutine#6172":StandaloneCoroutine{Cancelling}@3d56ffb6, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6209" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6209), "coroutine#6209":StandaloneCoroutine{Cancelling}@2203cde6, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6225" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6225), "coroutine#6225":StandaloneCoroutine{Cancelling}@6090b2f7, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6242" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:230)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6242), "coroutine#6242":StandaloneCoroutine{Cancelling}@8c66288, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6261" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6261), "coroutine#6261":StandaloneCoroutine{Cancelling}@1479360b, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6279" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6279), "coroutine#6279":StandaloneCoroutine{Cancelling}@2d9b8987, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6297" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6297), "coroutine#6297":StandaloneCoroutine{Cancelling}@2cc699ef, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6315" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6315), "coroutine#6315":StandaloneCoroutine{Cancelling}@60238a91, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6333" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6333), "coroutine#6333":StandaloneCoroutine{Cancelling}@5afdab5f, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6356" java.lang.NullPointerException: Cannot invoke "java.sql.Connection.setAutoCommit(boolean)" because "connection" is null
	at com.zaxxer.hikari.pool.PoolBase.resetConnectionState(PoolBase.java:206)
	at com.zaxxer.hikari.pool.PoolEntry.resetConnectionState(PoolEntry.java:108)
	at com.zaxxer.hikari.pool.ProxyConnection.close(ProxyConnection.java:236)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:197)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon.access$useNewConnectionAsyncInternal(RoomDatabaseJdbcImplHelperCommon.kt:21)
	at com.ustadmobile.door.room.RoomDatabaseJdbcImplHelperCommon$useNewConnectionAsyncInternal$1.invokeSuspend(RoomDatabaseJdbcImplHelperCommon.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:585)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
	Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [CoroutineId(6356), "coroutine#6356":StandaloneCoroutine{Cancelling}@b5209be, Dispatchers.Main]

> Task :core:allTests
> Task :core:check
> Task :core:build

[Incubating] Problems report is available at: file:///home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/build/reports/problems/problems-report.html

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

For more on this, please refer to https://docs.gradle.org/8.13/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.

BUILD SUCCESSFUL in 7m 24s
1926 actionable tasks: 1750 executed, 176 up-to-date
Build step 'Invoke Gradle script' changed build result to SUCCESS
[primary-bottomnav-visiblitysetting-End-To-End-Tests] $ /bin/sh -xe /tmp/jenkins11119555318566547518.sh
+ npm --prefix test-end-to-end/webapp-cypress/ install

up to date, audited 262 packages in 716ms

56 packages are looking for funding
  run `npm fund` for details

3 vulnerabilities (2 low, 1 critical)

To address all issues, run:
  npm audit fix

Run `npm audit` for details.
+ npm --prefix test-end-to-end/webapp-cypress/ run delete:reports

> webapp-cypress@1.0.0 delete:reports
> rm results/* cypress/videos/*  cypress/screenshots/* logs/* log/* || true

rm: cannot remove 'results/*': No such file or directory
rm: cannot remove 'cypress/videos/*': No such file or directory
rm: cannot remove 'cypress/screenshots/*': No such file or directory
rm: cannot remove 'logs/*': No such file or directory
+ npm --prefix test-end-to-end/webapp-cypress/ run test-ci

> webapp-cypress@1.0.0 test-ci
> start-server-and-test start-server-ci $TESTCONTROLLER_URL cy:run-ci

1: starting server using command "npm run start-server-ci"
and when url "[ 'http://37.27.227.212:8070/' ]" is responding with HTTP status code 200
running tests using command "npm run cy:run-ci"


> webapp-cypress@1.0.0 start-server-ci
> java -jar ../../testserver-controller/build/libs/testserver-controller-all.jar -P:url=$TESTCONTROLLER_URL -P:srcRoot=../../ -P:mode=cypress


> webapp-cypress@1.0.0 cy:run-ci
> cypress run --config baseUrl=$TESTCONTROLLER_URL


DevTools listening on ws://127.0.0.1:41689/devtools/browser/b357b78a-faa7-46c8-98be-19c1c2de5a0d
The experimentalSessionAndOrigin configuration option was removed in Cypress version 12.0.0.

You can safely remove this option from your config.

https://on.cypress.io/session
https://on.cypress.io/origin

resize:  can't open terminal /dev/tty
tput: No value for $TERM and no -T specified
====================================================================================================

  (Run Starting)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Cypress:        14.0.3                                                                         │
  │ Browser:        Electron 130 (headless)                                                        │
  │ Node Version:   v18.20.5 (/home/jenkins/.nvm/versions/node/v18.20.5/bin/node)                  │
  │ Specs:          30 found (WEB_001_001_add_content.cy.js, WEB_001_002_add_invalid_content.cy.js │
  │                 , WEB_001_003_move_content.cy.js, WEB_002_001_admin_add_new_course_and_teacher │
  │                 .cy.js, WEB_002_003_teacher_record_attendance.cy.js, WEB_003_001_add_or_edit_c │
  │                 ourse_permission_test.c...)                                                    │
  │ Searched:       cypress/e2e/**/*.cy.{js,jsx,ts,tsx}                                            │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_001_001_add_content.cy.js                                                  (1 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=47901 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:15:34,027 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:15:34,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - No custom configurators were discovered as a service.
01:15:34,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:15:34,028 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:15:34,030 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:15:34,030 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:15:34,034 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 2 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:15:34,034 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:15:34,034 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:15:34,034 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:15:34,035 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:15:34,037 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@157853da - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:15:34,074 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:15:34,075 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:15:34,087 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - No compression will be used
01:15:34,087 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:15:34,096 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:15:34,096 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Roll-over at midnight.
01:15:34,099 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Setting initial period to 2025-09-01T23:15:33.892Z
01:15:34,099 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:15:34,099 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:15:34,101 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:15:34,106 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901/log/ustad-server.log
01:15:34,106 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901/log/ustad-server.log]
01:15:34,106 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:15:34,106 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:15:34,107 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:15:34,107 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:15:34,107 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@3cc1435c - End of configuration.
01:15:34,107 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6bf0219d - Registering current configuration as safe fallback point
01:15:34,107 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 73 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-47901
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


[2170232:0902/011548.361324:ERROR:ffmpeg_common.cc(970)] Unsupported pixel format: -1
[2171115:0902/011548.431326:ERROR:alsa_util.cc(204)] PcmOpen: default,Host is down
[2171115:0902/011548.432956:ERROR:alsa_util.cc(204)] PcmOpen: plug:default,Host is down
cypress-terminal-report: Wrote custom logs to cypress-logs. (3ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (1ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        1                                                                                │
  │ Passing:      1                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     36 seconds                                                                       │
  │ Spec Ran:     WEB_001_001_add_content.cy.js                                                    │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_001_001_add_content.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_001_002_add_invalid_content.cy.js                                          (2 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 47901
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=32066 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:16:14,945 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:16:14,946 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - No custom configurators were discovered as a service.
01:16:14,946 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:14,946 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:14,949 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:16:14,949 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:16:14,953 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:16:14,953 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:14,953 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:14,953 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:16:14,954 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:16:14,956 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@157853da - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:16:14,995 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:16:14,995 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:16:15,007 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - No compression will be used
01:16:15,008 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:16:15,017 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:16:15,017 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Roll-over at midnight.
01:16:15,020 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Setting initial period to 2025-09-01T23:16:14.813Z
01:16:15,020 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:16:15,020 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:16:15,021 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:16:15,026 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066/log/ustad-server.log
01:16:15,026 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066/log/ustad-server.log]
01:16:15,026 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:16:15,027 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:16:15,027 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:16:15,027 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:16:15,027 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@3cc1435c - End of configuration.
01:16:15,027 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6bf0219d - Registering current configuration as safe fallback point
01:16:15,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 74 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32066
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (4ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (1ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        1                                                                                │
  │ Passing:      1                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     7 seconds                                                                        │
  │ Spec Ran:     WEB_001_002_add_invalid_content.cy.js                                            │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_001_002_add_invalid_content.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_001_003_move_content.cy.js                                                 (3 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 32066
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=61460 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:16:24,117 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:16:24,117 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - No custom configurators were discovered as a service.
01:16:24,117 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:24,118 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:24,121 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:16:24,121 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:16:24,124 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:16:24,124 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:24,124 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:24,125 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:16:24,126 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:16:24,127 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@157853da - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:16:24,166 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:16:24,166 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:16:24,178 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - No compression will be used
01:16:24,179 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:16:24,188 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:16:24,188 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Roll-over at midnight.
01:16:24,191 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Setting initial period to 2025-09-01T23:16:23.986Z
01:16:24,191 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:16:24,191 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:16:24,192 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:16:24,197 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460/log/ustad-server.log
01:16:24,197 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460/log/ustad-server.log]
01:16:24,197 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:16:24,198 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:16:24,198 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:16:24,198 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:16:24,198 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@3cc1435c - End of configuration.
01:16:24,198 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6bf0219d - Registering current configuration as safe fallback point
01:16:24,198 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 74 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-61460
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (4ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (1ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        2                                                                                │
  │ Passing:      2                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     11 seconds                                                                       │
  │ Spec Ran:     WEB_001_003_move_content.cy.js                                                   │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_001_003_move_content.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_002_001_admin_add_new_course_and_teacher.cy.js                             (4 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 61460
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32874/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=32874 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-32874 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
TestServerController: stopping server on port: 32874
TestServerController: attempt: 1 failed to start server - will try again: url http://37.27.227.212:8070/umapp/ not ready after 6000 ms
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=15259 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:16:44,418 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:16:44,419 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - No custom configurators were discovered as a service.
01:16:44,419 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:44,419 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:16:44,422 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:16:44,422 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:16:44,425 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:16:44,425 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:44,426 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:16:44,426 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:16:44,427 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:16:44,429 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@236e3f4e - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:16:44,469 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:16:44,469 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:16:44,482 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1019298652 - No compression will be used
01:16:44,482 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1019298652 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:16:44,492 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:16:44,492 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - Roll-over at midnight.
01:16:44,495 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - Setting initial period to 2025-09-01T23:16:44.279Z
01:16:44,495 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:16:44,495 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:16:44,497 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:16:44,502 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259/log/ustad-server.log
01:16:44,502 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259/log/ustad-server.log]
01:16:44,502 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:16:44,503 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:16:44,503 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:16:44,503 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:16:44,503 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@dd0c991 - End of configuration.
01:16:44,503 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@5f16132a - Registering current configuration as safe fallback point
01:16:44,503 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 77 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-15259
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (6ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (4ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        3                                                                                │
  │ Passing:      3                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     37 seconds                                                                       │
  │ Spec Ran:     WEB_002_001_admin_add_new_course_and_teacher.cy.js                               │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_002_001_admin_add_new_course_and_teacher.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_002_003_teacher_record_attendance.cy.js                                    (5 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 15259
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=8855 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:17:16,586 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:17:16,586 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - No custom configurators were discovered as a service.
01:17:16,586 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:16,587 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:16,590 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:17:16,590 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:17:16,593 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:17:16,593 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:16,593 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:16,593 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:17:16,595 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:17:16,596 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@157853da - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:17:16,635 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:17:16,635 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:17:16,648 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - No compression will be used
01:17:16,648 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:17:16,657 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:17:16,657 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Roll-over at midnight.
01:17:16,660 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Setting initial period to 2025-09-01T23:17:16.456Z
01:17:16,660 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:17:16,660 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:17:16,661 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:17:16,666 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855/log/ustad-server.log
01:17:16,666 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855/log/ustad-server.log]
01:17:16,667 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:17:16,667 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:17:16,667 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:17:16,667 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:17:16,667 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@3cc1435c - End of configuration.
01:17:16,667 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6bf0219d - Registering current configuration as safe fallback point
01:17:16,667 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 74 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-8855
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (7ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (5ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        2                                                                                │
  │ Passing:      2                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     10 seconds                                                                       │
  │ Spec Ran:     WEB_002_003_teacher_record_attendance.cy.js                                      │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_002_003_teacher_record_attendance.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_003_001_add_or_edit_course_permission_test.cy.js                           (6 of 30)
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 8855
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=48844 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:17:29,020 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:17:29,020 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - No custom configurators were discovered as a service.
01:17:29,020 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:29,020 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:29,023 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:17:29,023 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:17:29,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:17:29,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:29,027 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:29,027 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:17:29,028 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:17:29,030 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@236e3f4e - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:17:29,068 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:17:29,068 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:17:29,081 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1019298652 - No compression will be used
01:17:29,081 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@1019298652 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:17:29,090 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:17:29,090 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - Roll-over at midnight.
01:17:29,093 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - Setting initial period to 2025-09-01T23:17:28.891Z
01:17:29,093 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:17:29,093 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@6bf0219d - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:17:29,095 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:17:29,100 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844/log/ustad-server.log
01:17:29,100 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844/log/ustad-server.log]
01:17:29,101 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:17:29,101 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:17:29,101 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:17:29,101 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:17:29,101 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@dd0c991 - End of configuration.
01:17:29,102 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@5f16132a - Registering current configuration as safe fallback point
01:17:29,102 |-INFO in ch.qos.logback.classic.util.ContextInitializer@71c3b41 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 75 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-48844
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (8ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (6ms)

  (Results)

  ┌────────────────────────────────────────────────────────────────────────────────────────────────┐
  │ Tests:        3                                                                                │
  │ Passing:      3                                                                                │
  │ Failing:      0                                                                                │
  │ Pending:      0                                                                                │
  │ Skipped:      0                                                                                │
  │ Screenshots:  0                                                                                │
  │ Video:        true                                                                             │
  │ Duration:     12 seconds                                                                       │
  │ Spec Ran:     WEB_003_001_add_or_edit_course_permission_test.cy.js                             │
  └────────────────────────────────────────────────────────────────────────────────────────────────┘


  (Video)

  -  Video output: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/cypress/videos/WEB_003_001_add_or_edit_course_permission_test.cy.js.mp4


────────────────────────────────────────────────────────────────────────────────────────────────────
                                                                                                    
  Running:  WEB_003_002_add_module_text_blocks_and_perform_indent_hide_delete_ac           (7 of 30)
            tions.cy.js                                                                             
TestServerController: start server requested
TestServerController: stopping all servers
TestServerController: stopping server on port: 48844
TestServerController: all stopped
TestServerController: exec /usr/bin/java -Dlogs_dir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070/log -jar build/libs/ustad-server-all.jar runserver -config=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../app-ktor-server/src/main/resources/application.conf -P:ktor.deployment.port=3070 -P:ktor.ustad.datadir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070 -P:ktor.ustad.jsDevServer= -P:ktor.ustad.useMockEmail=true
http://37.27.227.212:8070/umapp/ ready
01:17:43,478 |-INFO in ch.qos.logback.classic.LoggerContext[default] - This is logback-classic version ?
01:17:43,479 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - No custom configurators were discovered as a service.
01:17:43,479 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:43,479 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.joran.SerializedModelConfigurator
01:17:43,482 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.scmo]
01:17:43,482 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.scmo]
01:17:43,486 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.joran.SerializedModelConfigurator.configure() call lasted 3 milliseconds. ExecutionStatus=INVOKE_NEXT_IF_ANY
01:17:43,486 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Trying to configure with ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:43,487 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - Constructed configurator of type class ch.qos.logback.classic.util.DefaultJoranConfigurator
01:17:43,487 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
01:17:43,488 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml]
01:17:43,490 |-INFO in ch.qos.logback.core.joran.spi.ConfigurationWatchList@157853da - URL [jar:file:/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/app-ktor-server/build/libs/ustad-server-all.jar!/logback.xml] is not of type file
01:17:43,528 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - Processing appender named [FILE]
01:17:43,528 |-INFO in ch.qos.logback.core.model.processor.AppenderModelHandler - About to instantiate appender of type [ch.qos.logback.core.rolling.RollingFileAppender]
01:17:43,542 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - No compression will be used
01:17:43,542 |-INFO in c.q.l.core.rolling.TimeBasedRollingPolicy@119290689 - Will use the pattern /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070/log/ustad-server.%d{yyyy-MM-dd}.%i.log for the active file
01:17:43,552 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - The date pattern is 'yyyy-MM-dd' from file name pattern '/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070/log/ustad-server.%d{yyyy-MM-dd}.%i.log'.
01:17:43,552 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Roll-over at midnight.
01:17:43,555 |-INFO in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - Setting initial period to 2025-09-01T23:17:43.328Z
01:17:43,555 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - SizeAndTimeBasedFNATP is deprecated. Use SizeAndTimeBasedRollingPolicy instead
01:17:43,555 |-WARN in ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP@236e3f4e - For more information see http://logback.qos.ch/manual/appenders.html#SizeAndTimeBasedRollingPolicy
01:17:43,556 |-INFO in ch.qos.logback.core.model.processor.ImplicitModelHandler - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
01:17:43,561 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: /home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070/log/ustad-server.log
01:17:43,561 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070/log/ustad-server.log]
01:17:43,562 |-INFO in ch.qos.logback.classic.model.processor.RootLoggerModelHandler - Setting level of ROOT logger to TRACE
01:17:43,562 |-INFO in ch.qos.logback.core.model.processor.AppenderRefModelHandler - Attaching appender named [FILE] to Logger[ROOT]
01:17:43,562 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [org.eclipse.jetty] to INFO
01:17:43,562 |-INFO in ch.qos.logback.classic.model.processor.LoggerModelHandler - Setting level of logger [io.netty] to INFO
01:17:43,562 |-INFO in ch.qos.logback.core.model.processor.DefaultProcessor@3cc1435c - End of configuration.
01:17:43,563 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@6bf0219d - Registering current configuration as safe fallback point
01:17:43,563 |-INFO in ch.qos.logback.classic.util.ContextInitializer@343570b7 - ch.qos.logback.classic.util.DefaultJoranConfigurator.configure() call lasted 76 milliseconds. ExecutionStatus=DO_NOT_INVOKE_NEXT_IF_ANY

DataDir=/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/../../testserver-controller/build/data/server-3070
CreateLearningSpaceRequest(url=http://37.27.227.212:8070/, title=TestLearningSpace, dbUrl=null, dbUsername=, dbPassword=, adminUsername=admin, adminPassword=testpass)
Done: OK


cypress-terminal-report: Wrote custom logs to cypress-logs. (8ms)
cypress-terminal-report: Wrote custom logs to cypress-logs. (7ms)
Build timed out (after 300 minutes). Marking the build as failed.
[2169286:0902/060805.568770:FATAL:electron_browser_main_parts.cc(504)] Failed to shutdown.
The Test Runner unexpectedly exited via a exit event with signal SIGTRAP

Please search Cypress documentation for possible solutions:

https://on.cypress.io

Check if there is a GitHub issue describing this crash:

https://github.com/cypress-io/cypress/issues

Consider opening a new issue.

----------

Platform: linux-x64 (Ubuntu - 24.04)
Cypress Version: 14.0.3
Error: Command failed with exit code 1: npm run cy:run-ci
    at makeError (/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/node_modules/start-server-and-test/node_modules/execa/lib/error.js:60:11)
    at handlePromise (/home/jenkins/.jenkins/workspace/primary-bottomnav-visiblitysetting-End-To-End-Tests/test-end-to-end/webapp-cypress/node_modules/start-server-and-test/node_modules/execa/index.js:118:26)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
  shortMessage: 'Command failed with exit code 1: npm run cy:run-ci',
  command: 'npm run cy:run-ci',
  escapedCommand: '"npm run cy:run-ci"',
  exitCode: 1,
  signal: undefined,
  signalDescription: undefined,
  stdout: undefined,
  stderr: undefined,
  failed: true,
  timedOut: false,
  isCanceled: false,
  killed: false
}
Build was aborted
[htmlpublisher] Archiving HTML reports...
Recording test results
[Checks API] No suitable checks publisher found.
[Slack Notifications] found #87 as previous completed, non-aborted build
[Slack Notifications] will send OnEveryFailureNotification because build matches and user preferences allow it
Finished: FAILURE