우리의 장고 사이트를 1.4에서 1.9로 업그레이드하고 있습니다. pull a github으로 지정하고 laboratory을 사용하여 업그레이드 된 사이트를 기존 프로덕션 사이트와 비교하여 테스트하십시오. 그러나 명백한 이유로 인해 (포스트그레스) 프로덕션 데이터베이스에 새로운 사이트를 작성할 수는 없습니다.미들웨어로 모든 Django db 트랜잭션을 롤백합니다.
이제는이 읽기 전용 인스턴스에 readonly db 권한을 부여 하겠지만 모든 쓰기에 대해 오류를 발생시킬 수는 없습니다. 문제의 데이터베이스 연결을 ATOMIC_REQUESTS = True
을 사용하도록 설정해야하고 모든 요청이 끝날 때 트랜잭션을 롤백하기 위해 미들웨어를 작성해야하지만 Django의 트랜잭션 처리에서 변경된 사항은 1.4가 아니므로 그 미들웨어를 구현하는 가장 좋은 방법은 확실합니다.
모든 트랜잭션을 확실하게 롤백하기 위해 미들웨어를 작성하는 방법은 무엇입니까?
브릴리언트. 나는 그것을 시도 할 것이다. 하나의 질문 : 비록 트랜잭션을 롤백하지 않고 커밋하지 않는다면, 장고가 지속적으로 연결된다는 점에 대해 걱정할 필요가 있습니까? –
당신이 수천 건의 거래를하지 않았기 때문에 테스트 목적으로 실제로 알지 못하는 건 제가 중요하다고 생각하지 않습니다. BTW, 수동으로 롤백 할 필요가 없습니다. – e4c5
아직 얻지 못했습니다 - 다른 우선 순위가 나타났습니다. :) 한번 시도해 보니 다시 확인해 보겠습니다. 아마도이 시점에서 2 ~ 3 주 정도 걸릴 것입니다. –