fix refresh token

This commit is contained in:
javad committed 2026-10-09 11:33:00 +03:30
1 parent 4dc6d98abf
commit a28ac2167c
2 files changed
+45 -1

No files matched your search

+3 -1
View File
@@ -120,7 +120,9 @@ class CustomTokenRefreshView(PublicAuthView):
refresh_value = serializer.validated_data['refresh']
try:
refresh = RefreshToken(refresh_value)
session = JwtToken.objects.select_for_update().select_related(
# Nullable user/workspace joins must not participate in PostgreSQL's
# row lock. The session alone serializes refresh-token rotation.
session = JwtToken.objects.select_for_update(of=('self',)).select_related(
'cuser_role__cuser', 'cuser_role__role_type', 'cuser_role__sys_ws',
).get(refresh=refresh_value, is_blocked=False)
except (TokenError, JwtToken.DoesNotExist):