> Task :app-android:compileBenchmarkReleaseArtProfile
> Task :app-android:packageBenchmarkRelease
> Task :app-android:createBenchmarkReleaseApkListingFileRedirect
> Task :app-android:assembleBenchmarkRelease
> Task :app-android:minifyReleaseWithR8
> Task :app-react:compileProductionExecutableKotlinJs
> Task :app-react:jsProductionExecutableCompileSync
> Task :app-react:compileTestDevelopmentExecutableKotlinJs
> Task :app-react:jsBrowserProductionWebpack
asset size limit: The following asset(s) exceed the recommended size limit (244 KiB).
This can impact web performance.
Assets:
app-react.js (7.07 MiB)
entrypoint size limit: The following entrypoint(s) combined asset size exceeds the recommended limit (244 KiB). This can impact web performance.
Entrypoints:
main (7.07 MiB)
app-react.js
webpack performance recommendations:
You can limit the size of your bundles by using import() or require.ensure to lazy load some parts of your application.
For more info visit https://webpack.js.org/guides/code-splitting/
> Task :app-react:jsBrowserDistribution
> Task :app-react:assemble
> Task :app-react:jsTestTestDevelopmentExecutableCompileSync
> Task :app-react:jsBrowserTest
All files matched by "/tmp/_karma_webpack_257861/**/*" were excluded or matched by prior matchers.
> Task :app-android:l8DexDesugarLibRelease
> Task :app-react:jsTest
> Task :app-react:allTests
> Task :app-react:check
> Task :app-react:build
> Task :app-android:compileReleaseArtProfile
> Task :app-desktop:bundleWeb
> Task :app-desktop:build
> Task :app-ktor-server:processResources
> Task :app-ktor-server:classes
> Task :app-ktor-server:jar
> Task :app-ktor-server:startScripts
> Task :app-ktor-server:distTar
> Task :app-ktor-server:distZip
> Task :app-ktor-server:shadowJar
> Task :app-ktor-server:startShadowScripts
> Task :app-ktor-server:shadowDistTar
> Task :app-ktor-server:shadowDistZip
> Task :app-ktor-server:assemble
> Task :app-android:packageRelease
> Task :app-android:createReleaseApkListingFileRedirect
> Task :app-android:assembleRelease
> Task :app-android:assemble
> Task :app-android:build
> Task :sharedse:compileTestKotlinJvm
> Task :sharedse:jvmTestClasses
> Task :app-ktor-server:compileTestKotlin
w: Argument -Xopt-in is deprecated. Please use -opt-in instead
w: Opt-in requirement marker com.squareup.kotlinpoet.metadata.KotlinPoetMetadataPreview is unresolved. Please make sure it's present in the module dependencies
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/PersonAuthRegisterRouteTest.kt:197:16 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/PersonAuthRegisterRouteTest.kt:240:16 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/app-ktor-server/src/test/kotlin/com/ustadmobile/lib/rest/PersonAuthRegisterRouteTest.kt:279:16 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
> Task :sharedse:jvmTest
> Task :app-ktor-server:compileTestJavaNO-SOURCE
> Task :app-ktor-server:testClasses
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] database build complete
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, PersonGroup, PersonGroupMember, SyncNode, Site, ScopedGrant, PersonAuth2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: SyncNode
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Site
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO PersonGroup (groupUid, groupMasterCsn, groupLocalCsn, groupLastChangedBy, groupLct, groupName, groupActive, personGroupFlag) VALUES(?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : SQLite Change Tracker: Changed tables=[PersonGroup]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : end transaction #1
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: PersonGroup
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO Person (personUid, username, firstNames, lastName, emailAddr, phoneNum, gender, active, isPersonalAccount, dateOfBirth, personAddress, personOrgId, personGroupUid, personLct, personCountry, personType, personMasterChangeSeqNum, personLocalChangeSeqNum, personLastChangedBy, admin, personNotes, fatherName, fatherNumber, motherName, motherNum) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 : SQLite Change Tracker: Changed tables=[Person]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 : end transaction #2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO PersonGroupMember (groupMemberUid, groupMemberActive, groupMemberPersonUid, groupMemberGroupUid, groupMemberMasterCsn, groupMemberLocalCsn, groupMemberLastChangedBy, groupMemberLct) VALUES(?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : SQLite Change Tracker: Changed tables=[PersonGroupMember]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : end transaction #3
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: PersonGroupMember
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO ScopedGrant (sgUid, sgPcsn, sgLcsn, sgLcb, sgLct, sgTableId, sgEntityUid, sgPermissions, sgGroupUid, sgIndex, sgFlags) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 : SQLite Change Tracker: Changed tables=[ScopedGrant]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 : end transaction #4
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: ScopedGrant
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #5 - start readOnly=true
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "SELECT authSalt FROM Site LIMIT 1"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #5 : end transaction #5
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #6 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #6 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT OR REPLACE INTO PersonAuth2 (pauthUid, pauthMechanism, pauthAuth, pauthLcsn, pauthPcsn, pauthLcb, pauthLct) VALUES(?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #6 : SQLite Change Tracker: Changed tables=[PersonAuth2]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #6 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #6 : end transaction #6
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: PersonAuth2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #7 - start readOnly=true
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "SELECT authSalt FROM Site LIMIT 1"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #7 : end transaction #7
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #8 - start readOnly=true
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "
SELECT PersonAuth2.*
FROM PersonAuth2
JOIN Person ON PersonAuth2.pauthUid = Person.personUid
WHERE Person.username = ?
"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #8 : end transaction #8
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] database build complete
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] database build complete
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, PersonGroup, PersonGroupMember, SyncNode, Site, ScopedGrant, PersonAuth2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, PersonGroup, PersonGroupMember, SyncNode, Site, ScopedGrant, PersonAuth2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: SyncNode
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: SyncNode
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Site
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Site
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 - start readOnly=false
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : creating SQLite change triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO Person (personUid, username, firstNames, lastName, emailAddr, phoneNum, gender, active, isPersonalAccount, dateOfBirth, personAddress, personOrgId, personGroupUid, personLct, personCountry, personType, personMasterChangeSeqNum, personLocalChangeSeqNum, personLastChangedBy, admin, personNotes, fatherName, fatherNumber, motherName, motherNum) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT INTO Person (personUid, username, firstNames, lastName, emailAddr, phoneNum, gender, active, isPersonalAccount, dateOfBirth, personAddress, personOrgId, personGroupUid, personLct, personCountry, personType, personMasterChangeSeqNum, personLocalChangeSeqNum, personLastChangedBy, admin, personNotes, fatherName, fatherNumber, motherName, motherNum) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT OR REPLACE INTO SystemPermission (spUid, spToPersonUid, spToGroupUid, spPermissionsFlag, spLastModified, spIsDeleted) VALUES(?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT OR REPLACE INTO SystemPermission (spUid, spToPersonUid, spToGroupUid, spPermissionsFlag, spLastModified, spIsDeleted) VALUES(?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : SQLite Change Tracker: Changed tables=[Person, SystemPermission]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : SQLite Change Tracker: Changed tables=[Person, SystemPermission]
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 committed changes
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : end transaction #1
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #1 : end transaction #1
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, SystemPermission
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, SystemPermission
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 - start readOnly=true
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 - start readOnly=true
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "SELECT authSalt FROM Site LIMIT 1"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "SELECT authSalt FROM Site LIMIT 1"
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 : end transaction #2
Jan 29, 2025 9:16:11 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #2 : end transaction #2
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 - start readOnly=false
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 - start readOnly=false
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : creating SQLite change triggers
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : creating SQLite change triggers
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] creating SQLite triggers
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT OR REPLACE INTO PersonAuth2 (pauthUid, pauthMechanism, pauthAuth, pauthLcsn, pauthPcsn, pauthLcb, pauthLct) VALUES(?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "INSERT OR REPLACE INTO PersonAuth2 (pauthUid, pauthMechanism, pauthAuth, pauthLcsn, pauthPcsn, pauthLcb, pauthLct) VALUES(?, ?, ?, ?, ?, ?, ?)"
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : SQLite Change Tracker: Changed tables=[PersonAuth2]
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINE: [DEBUG] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : SQLite Change Tracker: Changed tables=[PersonAuth2]
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [NodeEventJdbcImplListenerSqlite - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] found 0 new events =
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 committed changes
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 committed changes
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : end transaction #3
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #3 : end transaction #3
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: PersonAuth2
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: PersonAuth2
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 - start readOnly=true
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 - start readOnly=true
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "
SELECT PersonAuth2.*
FROM PersonAuth2
WHERE PersonAuth2.pauthUid = ?
"
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [prepareAndUseStatementAsync - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - prepare "
SELECT PersonAuth2.*
FROM PersonAuth2
WHERE PersonAuth2.pauthUid = ?
"
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 : end transaction #4
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [RoomJdbcImplHelper - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] - useNewConnectionAsyncInternal connection #4 : end transaction #4
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] : created tables
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] : created tables
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] : created tables
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] : created tables
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite::memory:] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: RequestedEntry
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: RequestedEntry
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
INFO: [INFO] DoorLog - [DatabaseBuilder.build - jdbc:sqlite:build/tmp/UmAppDatabase.sqlite] database build complete
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, SyncNode, Site, PersonAuth2, SystemPermission
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Person, SyncNode, Site, PersonAuth2, SystemPermission
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: SyncNode
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: SyncNode
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Site
Jan 29, 2025 9:16:12 AM io.github.aakira.napier.DebugAntilog performLog
FINEST: [VERBOSE] DoorLog - InvalidationTracker: tables invalidated: Site
Verification result: AuthenticationData(userHandle=6FDF668AFC1B876CE2EE3DB2, collectedClientData=CollectedClientData(type=webauthn.get, challenge=8ED75EC77ADFEDD736CEB873, origin=android:apk-key-hash:FhOh2f8Wsm1hMaBCSV7CTSYUddVQLmzf82reTfJr4OY, crossOrigin=null, tokenBinding=null), clientExtensions=null)
Verification error: Assertion signature is not valid.
Verification error: The actual challenge does not match the expected challenge
> Task :app-ktor-server:test
> Task :app-ktor-server:check
> Task :app-ktor-server:build
> Task :sharedse:allTests
> Task :sharedse:check
> Task :sharedse:build
> Task :core:compileTestKotlinJvm
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/account/AuthManagerTest.kt:47:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/cachestoragepath/GetStoragePathForUrlUseCaseCommonJvmTest.kt:39:13 Variable 'getStoragePathUseCase' is never used
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/saveandmanifest/SaveLocalUriAndManifestUploadIntegrationTest.kt:210:80 Parameter 'prev' is never used, could be renamed to _
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadServerUseCaseTest.kt:113:51 Parameter 'invocation' is never used, could be renamed to _
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/domain/blob/upload/BlobUploadServerUseCaseTest.kt:161:51 Parameter 'invocation' is never used, could be renamed to _
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/domain/clazzenrolment/pendingenrolment/RequestEnrolmentUseCaseJvmTest.kt:32:40 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/domain/invite/ProcessInviteUseCaseTest.kt:65:17 Variable 'inviteLink' is never used
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:277:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:317:13 Variable 'savedAccount' is never used
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:319:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:328:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:445:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:453:18 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/impl/UstadAccountManagerTest.kt:560:16 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt:73:5 Parameter 'baseTmpDir' is never used
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt:197:37 Parameter 'call' is never used, could be renamed to _
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/test/clientservertest/ClientServerIntegrationTest.kt:206:47 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/test/viewmodeltest/ViewModelTestBuilder.kt:323:33 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/util/test/MainDispatcherRule.kt:17:31 This declaration needs opt-in. Its usage should be marked with '@kotlinx.coroutines.ExperimentalCoroutinesApi' or '@OptIn(kotlinx.coroutines.ExperimentalCoroutinesApi::class)'
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/util/test/MainDispatcherRule.kt:18:21 This declaration needs opt-in. Its usage should be marked with '@kotlinx.coroutines.ExperimentalCoroutinesApi' or '@OptIn(kotlinx.coroutines.ExperimentalCoroutinesApi::class)'
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/util/test/MainDispatcherRule.kt:22:21 This declaration needs opt-in. Its usage should be marked with '@kotlinx.coroutines.ExperimentalCoroutinesApi' or '@OptIn(kotlinx.coroutines.ExperimentalCoroutinesApi::class)'
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazz/list/ClazzListViewModelTest.kt:66:36 'grantScopedPermission(Person, Long, Int, Long): ScopedGrantResult' is deprecated. This has been replaced with SystemPermission and CoursePermission
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/clazzlog/edit/ClazzLogEditAttendanceViewModelTest.kt:69:50 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/parentalconsentmanagement/ParentalConsentManagementViewModelTest.kt:60:40 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/PersonIntegrationTest.kt:29:40 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
w: file:///home/jenkins/.jenkins/workspace/dev-simplified-onboarding-distributedcache/core/src/jvmTest/kotlin/com/ustadmobile/core/viewmodel/person/detail/PersonDetailViewModelTest.kt:187:20 'insertPersonAndGroup(T, Int = ...): T' is deprecated. Should use AddNewPersonUseCase instead
> Task :core:jvmTestClasses
OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest$TestUploadException
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest.stubToThrowException$lambda$11$lambda$10(BlobUploadClientUseCaseJvmTest.kt:209)
at org.mockito.internal.stubbing.StubbedInvocationMatcher.answer(StubbedInvocationMatcher.java:42)
at org.mockito.internal.handler.MockHandlerImpl.handle(MockHandlerImpl.java:103)
at org.mockito.internal.handler.NullResultGuardian.handle(NullResultGuardian.java:29)
at org.mockito.internal.handler.InvocationNotifierHandler.handle(InvocationNotifierHandler.java:34)
at org.mockito.internal.creation.bytebuddy.MockMethodInterceptor.doIntercept(MockMethodInterceptor.java:82)
at org.mockito.internal.creation.bytebuddy.MockMethodAdvice.handle(MockMethodAdvice.java:134)
at com.ustadmobile.core.domain.upload.ChunkedUploadClientUseCaseKtorImpl.invoke(ChunkedUploadClientUseCaseKtorImpl.kt:107)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvm$asyncUploadItemsFromChannelProcessor$2$1.invokeSuspend(BlobUploadClientUseCaseJvm.kt:120)
at _COROUTINE._BOUNDARY._(CoroutineDebugging.kt:42)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvm$invoke$2.invokeSuspend(BlobUploadClientUseCaseJvm.kt:244)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvm$invoke$4.invokeSuspend(BlobUploadClientUseCaseJvm.kt:272)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvm.invoke(BlobUploadClientUseCaseJvm.kt:269)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest$givenTransferJobInDatabase_whenErrorOccurs_thenAttemptCountIncrementAndExceptionThrown$1.invokeSuspend(BlobUploadClientUseCaseJvmTest.kt:384)
Caused by: com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest$TestUploadException
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest.stubToThrowException$lambda$11$lambda$10(BlobUploadClientUseCaseJvmTest.kt:209)
at org.mockito.internal.stubbing.StubbedInvocationMatcher.answer(StubbedInvocationMatcher.java:42)
at org.mockito.internal.handler.MockHandlerImpl.handle(MockHandlerImpl.java:103)
at org.mockito.internal.handler.NullResultGuardian.handle(NullResultGuardian.java:29)
at org.mockito.internal.handler.InvocationNotifierHandler.handle(InvocationNotifierHandler.java:34)
at org.mockito.internal.creation.bytebuddy.MockMethodInterceptor.doIntercept(MockMethodInterceptor.java:82)
at org.mockito.internal.creation.bytebuddy.MockMethodAdvice.handle(MockMethodAdvice.java:134)
at com.ustadmobile.core.domain.upload.ChunkedUploadClientUseCaseKtorImpl.invoke(ChunkedUploadClientUseCaseKtorImpl.kt:107)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvm$asyncUploadItemsFromChannelProcessor$2$1.invokeSuspend(BlobUploadClientUseCaseJvm.kt:120)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:277)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:95)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:69)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:48)
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
at com.ustadmobile.core.domain.blob.upload.BlobUploadClientUseCaseJvmTest.givenTransferJobInDatabase_whenErrorOccurs_thenAttemptCountIncrementAndExceptionThrown(BlobUploadClientUseCaseJvmTest.kt:356)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
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.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
at org.junit.rules.ExternalResource$1.evaluate(ExternalResource.java:54)
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:181)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:130)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:101)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:61)
at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:122)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:69)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.run(GradleWorkerMain.java:69)
at worker.org.gradle.process.internal.worker.GradleWorkerMain.main(GradleWorkerMain.java:74)
===SQLITE===
add("""
CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Ins_personPictureUri
AFTER INSERT ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Ins_personPictureThumbnailUri
AFTER INSERT ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureThumbnailUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Upd_personPictureUri_New
AFTER UPDATE ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureUri != OLD.personPictureUri AND NEW.personPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Upd_personPictureUri_Old
AFTER UPDATE ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureUri != OLD.personPictureUri AND OLD.personPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Upd_personPictureThumbnailUri_New
AFTER UPDATE ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureThumbnailUri != OLD.personPictureThumbnailUri AND NEW.personPictureThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureThumbnailUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Upd_personPictureThumbnailUri_Old
AFTER UPDATE ON PersonPicture
FOR EACH ROW WHEN NEW.personPictureThumbnailUri != OLD.personPictureThumbnailUri AND OLD.personPictureThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureThumbnailUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Del_personPictureUri
AFTER DELETE ON PersonPicture
FOR EACH ROW WHEN OLD.personPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_PersonPicture_Del_personPictureThumbnailUri
AFTER DELETE ON PersonPicture
FOR EACH ROW WHEN OLD.personPictureThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureThumbnailUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Ins_coursePictureUri
AFTER INSERT ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Ins_coursePictureThumbnailUri
AFTER INSERT ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureThumbnailUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Upd_coursePictureUri_New
AFTER UPDATE ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureUri != OLD.coursePictureUri AND NEW.coursePictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Upd_coursePictureUri_Old
AFTER UPDATE ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureUri != OLD.coursePictureUri AND OLD.coursePictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Upd_coursePictureThumbnailUri_New
AFTER UPDATE ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureThumbnailUri != OLD.coursePictureThumbnailUri AND NEW.coursePictureThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureThumbnailUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Upd_coursePictureThumbnailUri_Old
AFTER UPDATE ON CoursePicture
FOR EACH ROW WHEN NEW.coursePictureThumbnailUri != OLD.coursePictureThumbnailUri AND OLD.coursePictureThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureThumbnailUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Del_coursePictureUri
AFTER DELETE ON CoursePicture
FOR EACH ROW WHEN OLD.coursePictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_CoursePicture_Del_coursePictureThumbnailUri
AFTER DELETE ON CoursePicture
FOR EACH ROW WHEN OLD.coursePictureThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureThumbnailUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseAssignmentSubmissionFile_Ins_casaUri
AFTER INSERT ON CourseAssignmentSubmissionFile
FOR EACH ROW WHEN NEW.casaUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(90, NEW.casaUid, NEW.casaUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseAssignmentSubmissionFile_Upd_casaUri_New
AFTER UPDATE ON CourseAssignmentSubmissionFile
FOR EACH ROW WHEN NEW.casaUri != OLD.casaUri AND NEW.casaUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(90, NEW.casaUid, NEW.casaUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseAssignmentSubmissionFile_Upd_casaUri_Old
AFTER UPDATE ON CourseAssignmentSubmissionFile
FOR EACH ROW WHEN NEW.casaUri != OLD.casaUri AND OLD.casaUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 90
AND cljEntityUid = OLD.casaUid
AND cljUrl = OLD.casaUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseAssignmentSubmissionFile_Del_casaUri
AFTER DELETE ON CourseAssignmentSubmissionFile
FOR EACH ROW WHEN OLD.casaUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 90
AND cljEntityUid = OLD.casaUid
AND cljUrl = OLD.casaUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Ins_cbpPictureUri
AFTER INSERT ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpPictureUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Ins_cbpThumbnailUri
AFTER INSERT ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpThumbnailUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Upd_cbpPictureUri_New
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpPictureUri != OLD.cbpPictureUri AND NEW.cbpPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpPictureUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Upd_cbpPictureUri_Old
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpPictureUri != OLD.cbpPictureUri AND OLD.cbpPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpPictureUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Upd_cbpThumbnailUri_New
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpThumbnailUri != OLD.cbpThumbnailUri AND NEW.cbpThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpThumbnailUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Upd_cbpThumbnailUri_Old
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW WHEN NEW.cbpThumbnailUri != OLD.cbpThumbnailUri AND OLD.cbpThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpThumbnailUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Del_cbpPictureUri
AFTER DELETE ON CourseBlockPicture
FOR EACH ROW WHEN OLD.cbpPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpPictureUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_CourseBlockPicture_Del_cbpThumbnailUri
AFTER DELETE ON CourseBlockPicture
FOR EACH ROW WHEN OLD.cbpThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpThumbnailUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Ins_cepPictureUri
AFTER INSERT ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepPictureUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Ins_cepThumbnailUri
AFTER INSERT ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepThumbnailUri, 0, 1, 1);
END
""")
add("""
CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Upd_cepPictureUri_New
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepPictureUri != OLD.cepPictureUri AND NEW.cepPictureUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepPictureUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Upd_cepPictureUri_Old
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepPictureUri != OLD.cepPictureUri AND OLD.cepPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepPictureUri;
END """)
add("""
CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Upd_cepThumbnailUri_New
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepThumbnailUri != OLD.cepThumbnailUri AND NEW.cepThumbnailUri IS NOT NULL
BEGIN
INSERT OR REPLACE INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepThumbnailUri, 0, 1, 1);
END
""")
add("""CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Upd_cepThumbnailUri_Old
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW WHEN NEW.cepThumbnailUri != OLD.cepThumbnailUri AND OLD.cepThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepThumbnailUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Del_cepPictureUri
AFTER DELETE ON ContentEntryPicture2
FOR EACH ROW WHEN OLD.cepPictureUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepPictureUri;
END """)
add("""CREATE TRIGGER IF NOT EXISTS Retain_ContentEntryPicture2_Del_cepThumbnailUri
AFTER DELETE ON ContentEntryPicture2
FOR EACH ROW WHEN OLD.cepThumbnailUri IS NOT NULL
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepThumbnailUri;
END """)
===POSTGRES===
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_50_personPictureUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_50_personPictureUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_50_personPictureUri_ins_t
AFTER INSERT ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_50_personPictureUri();
""")
add("""
CREATE TRIGGER retain_c_clj_50_personPictureUri_upd_t
AFTER UPDATE ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureUri IS DISTINCT FROM OLD.personPictureUri AND OLD.personPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_50_personPictureUri();
""")
add("""
CREATE TRIGGER retain_d_clj_50_personPictureUri_upd_t
AFTER UPDATE ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureUri IS DISTINCT FROM OLD.personPictureUri AND NEW.personPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_50_personPictureUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_50_personPictureThumbnailUr() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(50, NEW.personPictureUid, NEW.personPictureThumbnailUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_50_personPictureThumbnailUr() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 50
AND cljEntityUid = OLD.personPictureUid
AND cljUrl = OLD.personPictureThumbnailUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_50_personPictureThumbnailUr_ins_t
AFTER INSERT ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_50_personPictureThumbnailUr();
""")
add("""
CREATE TRIGGER retain_c_clj_50_personPictureThumbnailUr_upd_t
AFTER UPDATE ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureThumbnailUri IS DISTINCT FROM OLD.personPictureThumbnailUri AND OLD.personPictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_50_personPictureThumbnailUr();
""")
add("""
CREATE TRIGGER retain_d_clj_50_personPictureThumbnailUr_upd_t
AFTER UPDATE ON PersonPicture
FOR EACH ROW
WHEN (NEW.personPictureThumbnailUri IS DISTINCT FROM OLD.personPictureThumbnailUri AND NEW.personPictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_50_personPictureThumbnailUr();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_125_coursePictureUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_125_coursePictureUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_125_coursePictureUri_ins_t
AFTER INSERT ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_125_coursePictureUri();
""")
add("""
CREATE TRIGGER retain_c_clj_125_coursePictureUri_upd_t
AFTER UPDATE ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureUri IS DISTINCT FROM OLD.coursePictureUri AND OLD.coursePictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_125_coursePictureUri();
""")
add("""
CREATE TRIGGER retain_d_clj_125_coursePictureUri_upd_t
AFTER UPDATE ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureUri IS DISTINCT FROM OLD.coursePictureUri AND NEW.coursePictureUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_125_coursePictureUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_125_coursePictureThumbnailUr() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(125, NEW.coursePictureUid, NEW.coursePictureThumbnailUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_125_coursePictureThumbnailUr() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 125
AND cljEntityUid = OLD.coursePictureUid
AND cljUrl = OLD.coursePictureThumbnailUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_125_coursePictureThumbnailUr_ins_t
AFTER INSERT ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_125_coursePictureThumbnailUr();
""")
add("""
CREATE TRIGGER retain_c_clj_125_coursePictureThumbnailUr_upd_t
AFTER UPDATE ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureThumbnailUri IS DISTINCT FROM OLD.coursePictureThumbnailUri AND OLD.coursePictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_125_coursePictureThumbnailUr();
""")
add("""
CREATE TRIGGER retain_d_clj_125_coursePictureThumbnailUr_upd_t
AFTER UPDATE ON CoursePicture
FOR EACH ROW
WHEN (NEW.coursePictureThumbnailUri IS DISTINCT FROM OLD.coursePictureThumbnailUri AND NEW.coursePictureThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_125_coursePictureThumbnailUr();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_90_casaUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(90, NEW.casaUid, NEW.casaUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_90_casaUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 90
AND cljEntityUid = OLD.casaUid
AND cljUrl = OLD.casaUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_90_casaUri_ins_t
AFTER INSERT ON CourseAssignmentSubmissionFile
FOR EACH ROW
WHEN (NEW.casaUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_90_casaUri();
""")
add("""
CREATE TRIGGER retain_c_clj_90_casaUri_upd_t
AFTER UPDATE ON CourseAssignmentSubmissionFile
FOR EACH ROW
WHEN (NEW.casaUri IS DISTINCT FROM OLD.casaUri AND OLD.casaUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_90_casaUri();
""")
add("""
CREATE TRIGGER retain_d_clj_90_casaUri_upd_t
AFTER UPDATE ON CourseAssignmentSubmissionFile
FOR EACH ROW
WHEN (NEW.casaUri IS DISTINCT FROM OLD.casaUri AND NEW.casaUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_90_casaUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_6677_cbpPictureUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpPictureUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_6677_cbpPictureUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpPictureUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_6677_cbpPictureUri_ins_t
AFTER INSERT ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6677_cbpPictureUri();
""")
add("""
CREATE TRIGGER retain_c_clj_6677_cbpPictureUri_upd_t
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpPictureUri IS DISTINCT FROM OLD.cbpPictureUri AND OLD.cbpPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6677_cbpPictureUri();
""")
add("""
CREATE TRIGGER retain_d_clj_6677_cbpPictureUri_upd_t
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpPictureUri IS DISTINCT FROM OLD.cbpPictureUri AND NEW.cbpPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_6677_cbpPictureUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_6677_cbpThumbnailUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6677, NEW.cbpUid, NEW.cbpThumbnailUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_6677_cbpThumbnailUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6677
AND cljEntityUid = OLD.cbpUid
AND cljUrl = OLD.cbpThumbnailUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_6677_cbpThumbnailUri_ins_t
AFTER INSERT ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6677_cbpThumbnailUri();
""")
add("""
CREATE TRIGGER retain_c_clj_6677_cbpThumbnailUri_upd_t
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpThumbnailUri IS DISTINCT FROM OLD.cbpThumbnailUri AND OLD.cbpThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6677_cbpThumbnailUri();
""")
add("""
CREATE TRIGGER retain_d_clj_6677_cbpThumbnailUri_upd_t
AFTER UPDATE ON CourseBlockPicture
FOR EACH ROW
WHEN (NEW.cbpThumbnailUri IS DISTINCT FROM OLD.cbpThumbnailUri AND NEW.cbpThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_6677_cbpThumbnailUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_6678_cepPictureUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepPictureUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_6678_cepPictureUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepPictureUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_6678_cepPictureUri_ins_t
AFTER INSERT ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6678_cepPictureUri();
""")
add("""
CREATE TRIGGER retain_c_clj_6678_cepPictureUri_upd_t
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepPictureUri IS DISTINCT FROM OLD.cepPictureUri AND OLD.cepPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6678_cepPictureUri();
""")
add("""
CREATE TRIGGER retain_d_clj_6678_cepPictureUri_upd_t
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepPictureUri IS DISTINCT FROM OLD.cepPictureUri AND NEW.cepPictureUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_6678_cepPictureUri();
""")
add("""
CREATE OR REPLACE FUNCTION retain_c_clj_6678_cepThumbnailUri() RETURNS TRIGGER AS $$
BEGIN
INSERT INTO CacheLockJoin(cljTableId, cljEntityUid, cljUrl, cljLockId, cljStatus, cljType)
VALUES(6678, NEW.cepUid, NEW.cepThumbnailUri, 0, 1, 1);
RETURN NEW;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE OR REPLACE FUNCTION retain_d_clj_6678_cepThumbnailUri() RETURNS TRIGGER AS $$
BEGIN
UPDATE CacheLockJoin
SET cljStatus = 3
WHERE cljTableId = 6678
AND cljEntityUid = OLD.cepUid
AND cljUrl = OLD.cepThumbnailUri;
RETURN OLD;
END $$ LANGUAGE plpgsql
""")
add("""
CREATE TRIGGER retain_c_clj_6678_cepThumbnailUri_ins_t
AFTER INSERT ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6678_cepThumbnailUri();
""")
add("""
CREATE TRIGGER retain_c_clj_6678_cepThumbnailUri_upd_t
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepThumbnailUri IS DISTINCT FROM OLD.cepThumbnailUri AND OLD.cepThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_c_clj_6678_cepThumbnailUri();
""")
add("""
CREATE TRIGGER retain_d_clj_6678_cepThumbnailUri_upd_t
AFTER UPDATE ON ContentEntryPicture2
FOR EACH ROW
WHEN (NEW.cepThumbnailUri IS DISTINCT FROM OLD.cepThumbnailUri AND NEW.cepThumbnailUri IS NOT NULL)
EXECUTE FUNCTION retain_d_clj_6678_cepThumbnailUri();
""")
[000073c01eb75070] vlcpulse audio output error: PulseAudio server connection failure: Connection refused
[000073c01eb75070] vlcpulse audio output error: PulseAudio server connection failure: Connection refused
[000073c01ede06f0] vlcpulse audio output error: PulseAudio server connection failure: Connection refused
[000073c01ede06f0] vlcpulse audio output error: PulseAudio server connection failure: Connection refused
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
error: XDG_RUNTIME_DIR is invalid or not set in the environment.
com.ustadmobile.core.domain.interop.HttpApiException: State content too large: 262145 exceeds limit of 262144
at com.ustadmobile.core.domain.xapi.state.StoreXapiStateUseCase.invoke(StoreXapiStateUseCase.kt:131)
at com.ustadmobile.core.domain.xapi.state.XapiStateUseCaseIntegrationTest$givenTextBodyTooLarge_whenStored_thenShouldThrowException$1.invokeSuspend(XapiStateUseCaseIntegrationTest.kt:289)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:277)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:95)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:69)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:48)
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source)
at com.ustadmobile.core.domain.xapi.state.XapiStateUseCaseIntegrationTest.givenTextBodyTooLarge_whenStored_thenShouldThrowException(XapiStateUseCaseIntegrationTest.kt:280)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
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:181)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName(TestWorker.java:130)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:101)
at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute(TestWorker.java:61)
at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute(ActionExecutionWorker.java:56)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:122)
at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call(SystemApplicationClassLoaderWorker.java:69)
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#2477" 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(2477), "coroutine#2477":StandaloneCoroutine{Cancelling}@3f298cae, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2493" 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(2493), "coroutine#2493":StandaloneCoroutine{Cancelling}@65d36d44, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2509" 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(2509), "coroutine#2509":StandaloneCoroutine{Cancelling}@d282984, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2561" 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: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(2561), "coroutine#2561":StandaloneCoroutine{Cancelling}@64478a0c, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#2597" 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(2597), "coroutine#2597":StandaloneCoroutine{Cancelling}@280510e3, Dispatchers.Main]
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findCourseCommentsByAssignmentUid$1@1cc628f5
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findCourseCommentsByAssignmentUid$1@1038a4cd
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@14318176
Invalidated PagingSource com.ustadmobile.core.db.dao.CommentsDao_JdbcImpl$findPrivateCommentsForUserByAssignmentUid$1@74be893fException in thread "UI Thread @coroutine#4200" java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@fd98514 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@fd98514 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(4153), "coroutine#4153":StandaloneCoroutine{Cancelling}@6b1da02e, Dispatchers.Main]
Caused by: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@fd98514 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#4261" 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(4261), "coroutine#4261":StandaloneCoroutine{Cancelling}@6874b2fb, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4293" 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(4293), "coroutine#4293":StandaloneCoroutine{Cancelling}@268fd6cc, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4324" 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: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(4324), "coroutine#4324":StandaloneCoroutine{Cancelling}@2d87b06b, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4392" 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(4392), "coroutine#4392":StandaloneCoroutine{Cancelling}@21504e13, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#4987" java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55840adc 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:254)
Suppressed: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55840adc 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(4979), "coroutine#4979":StandaloneCoroutine{Cancelling}@272cb017, Dispatchers.Main]
Caused by: java.lang.IllegalStateException: com.ustadmobile.door.room.RoomDatabaseJdbcImplHelper@55840adc 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#5044" 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(5044), "coroutine#5044":StandaloneCoroutine{Cancelling}@200346ad, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5061" 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(5061), "coroutine#5061":StandaloneCoroutine{Cancelling}@1bcf6f48, Dispatchers.Main]
> Task :core:jvmTest
Exception in thread "UI Thread @coroutine#5421" 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(5421), "coroutine#5421":StandaloneCoroutine{Cancelling}@7e0fe4f9, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5440" 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(5440), "coroutine#5440":StandaloneCoroutine{Cancelling}@2919fd41, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5458" 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(5458), "coroutine#5458":StandaloneCoroutine{Cancelling}@7d71d354, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#5999" 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(5999), "coroutine#5999":StandaloneCoroutine{Cancelling}@2fbc28ee, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6024" 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(6024), "coroutine#6024":StandaloneCoroutine{Cancelling}@374243d5, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6049" 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(6049), "coroutine#6049":StandaloneCoroutine{Cancelling}@54423bf1, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6085" 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(6085), "coroutine#6085":StandaloneCoroutine{Cancelling}@1b24f4e7, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6101" 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(6101), "coroutine#6101":StandaloneCoroutine{Cancelling}@1af752dc, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6120" 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(6120), "coroutine#6120":StandaloneCoroutine{Cancelling}@126a6f8, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6136" 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(6136), "coroutine#6136":StandaloneCoroutine{Cancelling}@7f9478d, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6157" 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(6157), "coroutine#6157":StandaloneCoroutine{Cancelling}@1516bb77, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6175" 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: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(6175), "coroutine#6175":StandaloneCoroutine{Cancelling}@30fefcaa, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6195" 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(6195), "coroutine#6195":StandaloneCoroutine{Cancelling}@585b4397, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6216" 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(6216), "coroutine#6216":StandaloneCoroutine{Cancelling}@23a8740b, Dispatchers.Main]
Exception in thread "UI Thread @coroutine#6236" 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(6236), "coroutine#6236":StandaloneCoroutine{Cancelling}@1322d583, Dispatchers.Main]
> Task :core:allTests
> Task :core:check
> Task :core:build
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.9/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD SUCCESSFUL in 6m 52s
1928 actionable tasks: 1736 executed, 192 up-to-date
Build step 'Invoke Gradle script' changed build result to SUCCESS
Archiving artifacts
Recording test results
[Checks API] No suitable checks publisher found.
Finished: SUCCESS