[backend/core] Fix sporadic GetOrCreateSystemUserAndKeypairAsync failures when another instances' instance.actor is contained in the change tracker

This commit is contained in:
Laura Hausmann 2024-07-04 01:23:56 +02:00
parent 17b446bfa0
commit 4684425e87
No known key found for this signature in database
GPG key ID: D044E84C5BE01605

View file

@ -48,7 +48,8 @@ public class SystemUserService(ILogger<SystemUserService> logger, DatabaseContex
{
var user = db.ChangeTracker
.Entries<User>()
.FirstOrDefault(p => p.Entity.UsernameLower == username.ToLowerInvariant())
.FirstOrDefault(p => p.Entity.Host == null &&
p.Entity.UsernameLower == username.ToLowerInvariant())
?.Entity;
user ??= await db.Users.FirstOrDefaultAsync(p => p.UsernameLower == username.ToLowerInvariant() &&