comparison src/c/http.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 94f9570671f0
children 9f3597979e98
comparison
equal deleted inserted replaced
1937:94f9570671f0 1938:d02c1a0d8082
445 445
446 void uw_copy_client_data(void *dst, void *src) { 446 void uw_copy_client_data(void *dst, void *src) {
447 } 447 }
448 448
449 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) { 449 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) {
450 uw_ensure_transaction(ctx); 450 do {
451 uw_get_app(ctx)->expunger(ctx, cli); 451 uw_ensure_transaction(ctx);
452 uw_commit(ctx); 452 uw_get_app(ctx)->expunger(ctx, cli);
453 } while (uw_commit(ctx) && (uw_rollback(ctx, 1), 1));
453 } 454 }
454 455
455 void uw_post_expunge(uw_context ctx, void *data) { 456 void uw_post_expunge(uw_context ctx, void *data) {
456 } 457 }
457 458