mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-04 05:53:43 +00:00 
			
		
		
		
	transaction: Add durable=True to the outermost db transactions.
				
					
				
			This commit adds `durable=True` to the outermost db transactions created in the following: * confirm_email_change * handle_upload_pre_finish_hook * deliver_scheduled_emails * restore_data_from_archive * do_change_realm_subdomain * do_create_realm * do_deactivate_realm * do_reactivate_realm * do_delete_user * do_delete_user_preserving_messages * create_stripe_customer * process_initial_upgrade * do_update_plan * request_sponsorship * upload_message_attachment * register_remote_server * do_soft_deactivate_users * maybe_send_batched_emails It helps to avoid creating unintended savepoints in the future. This is as a part of our plan to explicitly mark all the transaction.atomic calls with either 'savepoint=False' or 'durable=True' as required. * 'savepoint=True' is used in special cases.
This commit is contained in:
		
				
					committed by
					
						
						Tim Abbott
					
				
			
			
				
	
			
			
			
						parent
						
							174a458928
						
					
				
				
					commit
					9c9866461a
				
			@@ -100,7 +100,7 @@ def confirm_email_change(request: HttpRequest, confirmation_key: str) -> HttpRes
 | 
			
		||||
    assert isinstance(email_change_object, EmailChangeStatus)
 | 
			
		||||
    new_email = email_change_object.new_email
 | 
			
		||||
    old_email = email_change_object.old_email
 | 
			
		||||
    with transaction.atomic():
 | 
			
		||||
    with transaction.atomic(durable=True):
 | 
			
		||||
        user_profile = UserProfile.objects.select_for_update().get(
 | 
			
		||||
            id=email_change_object.user_profile_id
 | 
			
		||||
        )
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user