diff --git a/irrd/webui/auth/endpoints.py b/irrd/webui/auth/endpoints.py
index a2e3215..1dc75f8 100644
--- a/irrd/webui/auth/endpoints.py
+++ b/irrd/webui/auth/endpoints.py
@@ -387,11 +387,10 @@ async def oauth_callback(request: Request):
             password=secrets.token_hex(24),
         )
         session_provider.session.add(user)
-        session_provider.session.commit()
 
     await login_user(request, user, oic.rndstr())
 
-    session_provider.close()
+    session_provider.commit_close()
 
     request.session[MFA_COMPLETE_SESSION_KEY] = True
     return RedirectResponse(next_url, status_code=302)