Reduced exclusive lock durations

This commit is contained in:
emeric
2023-11-19 16:17:27 +01:00
parent 575fec5727
commit 17a2a969e2
104 changed files with 881 additions and 705 deletions
@@ -36,7 +36,7 @@ namespace Auth
AuthServiceBase::getOrCreateUser(std::string_view loginName)
{
Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
User::pointer user {User::find(session, loginName)};
if (!user)
@@ -56,7 +56,7 @@ namespace Auth
AuthServiceBase::onUserAuthenticated(UserId userId)
{
Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
User::pointer user {User::find(session, userId)};
if (user)
@@ -54,7 +54,7 @@ namespace Auth
Database::Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
Database::User::pointer user {Database::User::find(session, userId)};
if (!user)
@@ -76,7 +76,7 @@ namespace Auth
const std::string secretHash {sha1Function.compute(std::string {secret}, {})};
Database::Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
Database::AuthToken::pointer authToken {Database::AuthToken::find(session, secretHash)};
if (!authToken)
@@ -131,7 +131,7 @@ namespace Auth
{
Database::Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
Database::User::pointer user {Database::User::find(session, userId)};
if (!user)
@@ -49,7 +49,7 @@ namespace Auth
Database::User::PasswordHash passwordHash;
{
Database::Session& session {getDbSession()};
auto transaction {session.createSharedTransaction()};
auto transaction {session.createReadTransaction()};
const Database::User::pointer user {Database::User::find(session, loginName)};
if (!user)
@@ -100,7 +100,7 @@ namespace Auth
const Database::User::PasswordHash passwordHash {hashPassword(newPassword)};
Database::Session& session {getDbSession()};
auto transaction {session.createUniqueTransaction()};
auto transaction {session.createWriteTransaction()};
Database::User::pointer user {Database::User::find(session, userId)};
if (!user)