From 7f47d0aad8891833fc2b3296787c2926ca6bce2d Mon Sep 17 00:00:00 2001 From: Sayyid Hamid Mahdavi Date: Tue, 2 Sep 2025 15:20:46 +0330 Subject: [PATCH 1/2] use pk instead of id in clear expired tokens --- oauth2_provider/models.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/oauth2_provider/models.py b/oauth2_provider/models.py index a76db37c0..643ccec9e 100644 --- a/oauth2_provider/models.py +++ b/oauth2_provider/models.py @@ -712,9 +712,9 @@ def batch_delete(queryset, query): current_no = start_no = queryset.count() while current_no: - flat_queryset = queryset.values_list("id", flat=True)[:CLEAR_EXPIRED_TOKENS_BATCH_SIZE] + flat_queryset = queryset.values_list("pk", flat=True)[:CLEAR_EXPIRED_TOKENS_BATCH_SIZE] batch_length = flat_queryset.count() - queryset.model.objects.filter(id__in=list(flat_queryset)).delete() + queryset.model.objects.filter(pk__in=list(flat_queryset)).delete() logger.debug(f"{batch_length} tokens deleted, {current_no - batch_length} left") queryset = queryset.model.objects.filter(query) time.sleep(CLEAR_EXPIRED_TOKENS_BATCH_INTERVAL) From 4a82f7b0a6256cb13d3be2cb04c259dc9dacec9f Mon Sep 17 00:00:00 2001 From: Sayyid Hamid Mahdavi Date: Sun, 14 Sep 2025 15:57:26 +0330 Subject: [PATCH 2/2] use pk instead of id in revoke refresh token --- oauth2_provider/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oauth2_provider/models.py b/oauth2_provider/models.py index 643ccec9e..b43c7f4d3 100644 --- a/oauth2_provider/models.py +++ b/oauth2_provider/models.py @@ -532,7 +532,7 @@ def revoke(self): self = list(token)[0] with suppress(access_token_model.DoesNotExist): - access_token_model.objects.get(id=self.access_token_id).revoke() + access_token_model.objects.get(pk=self.access_token_id).revoke() self.access_token = None self.revoked = timezone.now()