Revert "[FEAT]: Add mem caching to the API to create and retrieve IntegritySignature" (#27936)
This reverts commit c6192b8b40656c44ba0a89cdd569fb0c0e4f87c4. The caching does little to save performance and in the case of whole course interation, it has a netgative performance impact.
This commit is contained in:
@@ -5,11 +5,9 @@ Agreements API
|
||||
import logging
|
||||
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.core.cache import cache
|
||||
from django.core.exceptions import ObjectDoesNotExist
|
||||
from opaque_keys.edx.keys import CourseKey
|
||||
|
||||
from openedx.core.djangoapps.agreements.cache import get_integrity_signature_cache_key
|
||||
from openedx.core.djangoapps.agreements.models import IntegritySignature
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
@@ -35,9 +33,6 @@ def create_integrity_signature(username, course_id):
|
||||
'Integrity signature already exists for user_id={user_id} and '
|
||||
'course_id={course_id}'.format(user_id=user.id, course_id=course_id)
|
||||
)
|
||||
cache_key = get_integrity_signature_cache_key(username, course_id)
|
||||
# Write into the cache for future retrieval
|
||||
cache.set(cache_key, signature)
|
||||
return signature
|
||||
|
||||
|
||||
@@ -53,17 +48,10 @@ def get_integrity_signature(username, course_id):
|
||||
* An IntegritySignature object, or None if one does not exist for the
|
||||
user + course combination.
|
||||
"""
|
||||
cache_key = get_integrity_signature_cache_key(username, course_id)
|
||||
cached_integrity_signature = cache.get(cache_key)
|
||||
if cached_integrity_signature:
|
||||
return cached_integrity_signature
|
||||
|
||||
user = User.objects.get(username=username)
|
||||
course_key = CourseKey.from_string(course_id)
|
||||
try:
|
||||
signature = IntegritySignature.objects.get(user=user, course_key=course_key)
|
||||
cache.set(cache_key, signature)
|
||||
return signature
|
||||
return IntegritySignature.objects.get(user=user, course_key=course_key)
|
||||
except ObjectDoesNotExist:
|
||||
return None
|
||||
|
||||
@@ -78,12 +66,5 @@ def get_integrity_signatures_for_course(course_id):
|
||||
Returns:
|
||||
* QuerySet of IntegritySignature objects (can be empty).
|
||||
"""
|
||||
|
||||
course_key = CourseKey.from_string(course_id)
|
||||
course_integrity_signature = IntegritySignature.objects.filter(
|
||||
course_key=course_key
|
||||
).select_related('user')
|
||||
for signature in course_integrity_signature:
|
||||
cache_key = get_integrity_signature_cache_key(signature.user.username, course_id)
|
||||
cache.set(cache_key, signature)
|
||||
return course_integrity_signature
|
||||
return IntegritySignature.objects.filter(course_key=course_key)
|
||||
|
||||
Reference in New Issue
Block a user