Mercurial > urweb
comparison src/c/fastcgi.c @ 1941:9f3597979e98
Tweaking handling of database transactions
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Wed, 25 Dec 2013 13:11:43 -0500 |
parents | d02c1a0d8082 |
children | c93fbd139732 |
comparison
equal
deleted
inserted
replaced
1940:1484ba362062 | 1941:9f3597979e98 |
---|---|
630 | 630 |
631 void uw_copy_client_data(void *dst, void *src) { | 631 void uw_copy_client_data(void *dst, void *src) { |
632 } | 632 } |
633 | 633 |
634 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) { | 634 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) { |
635 do { | 635 uw_ensure_transaction(ctx); |
636 uw_ensure_transaction(ctx); | 636 uw_get_app(ctx)->expunger(ctx, cli); |
637 uw_get_app(ctx)->expunger(ctx, cli); | 637 |
638 } while (uw_commit(ctx) && (uw_rollback(ctx, 1), 1)); | 638 if (uw_commit(ctx)) |
639 uw_error(ctx, UNLIMITED_RETRY, "Rerunning expunge transaction"); | |
639 } | 640 } |
640 | 641 |
641 void uw_post_expunge(uw_context ctx, void *data) { | 642 void uw_post_expunge(uw_context ctx, void *data) { |
642 } | 643 } |
643 | 644 |