From 32063fe003bc590c83ce7f6997f9d5148d74ed4b Mon Sep 17 00:00:00 2001 From: Usman Khalid <2200617@gmail.com> Date: Wed, 24 Sep 2014 19:18:37 +0500 Subject: [PATCH] Added commit_on_success_with_read_committed decorator to views which raise IntegrityErrors. TNL-367 --- common/djangoapps/course_modes/views.py | 2 ++ common/djangoapps/student/views.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/common/djangoapps/course_modes/views.py b/common/djangoapps/course_modes/views.py index 79e12a452e..839ec01f94 100644 --- a/common/djangoapps/course_modes/views.py +++ b/common/djangoapps/course_modes/views.py @@ -17,6 +17,7 @@ from course_modes.models import CourseMode from courseware.access import has_access from student.models import CourseEnrollment from opaque_keys.edx.locations import SlashSeparatedCourseKey +from util.db import commit_on_success_with_read_committed from xmodule.modulestore.django import modulestore @@ -121,6 +122,7 @@ class ChooseModeView(View): return render_to_response("course_modes/choose.html", context) @method_decorator(login_required) + @method_decorator(commit_on_success_with_read_committed) def post(self, request, course_id): """Takes the form submission from the page and parses it. diff --git a/common/djangoapps/student/views.py b/common/djangoapps/student/views.py index 98de22096a..62c36ea3dc 100644 --- a/common/djangoapps/student/views.py +++ b/common/djangoapps/student/views.py @@ -78,6 +78,7 @@ import track.views from dogapi import dog_stats_api +from util.db import commit_on_success_with_read_committed from util.json_request import JsonResponse from util.bad_request_rate_limiter import BadRequestRateLimiter @@ -615,6 +616,7 @@ def try_change_enrollment(request): @require_POST +@commit_on_success_with_read_committed def change_enrollment(request, auto_register=False, check_access=True): """ Modify the enrollment status for the logged-in user.