Hi Karen, Yes it does look as though I am using them backwards. I am at a bit of a loss as to how to get around this problem, though it is Monday morning and my brain isn't fully into gear yet. Can anyone think of a way for me to bypass the transaction management? I believe that even if I execute an insert statement via the database cursor the transaction management will still take place, is this correct?
Cheers, Chris On Mon, Jun 8, 2009 at 8:11 AM, Karen Tracey <kmtra...@gmail.com> wrote: > On Sun, Jun 7, 2009 at 7:44 PM, ChrisStoyles <cstoy...@gmail.com> wrote: > >> >> Hi All, >> >> I just wanted to quickly reach out to the group for ideas as to why I >> cannot get this to work: >> >> @transaction.commit_manually >> def some_view(request): >> # some view logic goes here >> >> sid = transaction.savepoint() >> le = models.LogEntry() >> le.message = 'A test log message' >> le.save() >> transaction.savepoint_commit(sid) >> >> transaction.rollback() >> >> My database back end is Postgres 8.3 and the engine I am using is >> postgresql_psycopg2. Any ideas as to why my LogEntry would not be >> committed to the database? I am not getting any exceptions being >> raised, the code executes as though it has all worked perfectly. >> > > I've not played with savepoints but the behavior you describe matches what > the docs say: > > http://docs.djangoproject.com/en/dev/topics/db/transactions/#savepoints > > Specifically, savepoint_commit updates the savepoint to include operations > since the savepoint was created, but it does not actually commit operations > at that point. After you have done a savepoint_commit, a savepoint_rollback > for that savepoint will not roll back the operations you hae committed for > the savepoint. However, an entire transaction rollback, which is what you > call, will roll back the whole transaction, including your savepoint > "committed" ones. > > As the doc describes it, savepoints are a tool to allow for finer-grained > rollback. You appear to be trying to use them for finer-grained commit, > which I don't think is what they are intended to provide. > > Karen > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com To unsubscribe from this group, send email to django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---