Mercurial > urweb
comparison src/c/fastcgi.c @ 1938:d02c1a0d8082
Proper handling of serialization failures during SQL COMMIT
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Mon, 23 Dec 2013 15:59:17 +0000 |
parents | 6745eafff617 |
children | 9f3597979e98 |
comparison
equal
deleted
inserted
replaced
1937:94f9570671f0 | 1938:d02c1a0d8082 |
---|---|
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 uw_ensure_transaction(ctx); | 635 do { |
636 uw_get_app(ctx)->expunger(ctx, cli); | 636 uw_ensure_transaction(ctx); |
637 uw_commit(ctx); | 637 uw_get_app(ctx)->expunger(ctx, cli); |
638 } while (uw_commit(ctx) && (uw_rollback(ctx, 1), 1)); | |
638 } | 639 } |
639 | 640 |
640 void uw_post_expunge(uw_context ctx, void *data) { | 641 void uw_post_expunge(uw_context ctx, void *data) { |
641 } | 642 } |
642 | 643 |