Mercurial > urweb
comparison src/c/cgi.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 |
---|---|
132 | 132 |
133 void uw_copy_client_data(void *dst, void *src) { | 133 void uw_copy_client_data(void *dst, void *src) { |
134 } | 134 } |
135 | 135 |
136 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) { | 136 void uw_do_expunge(uw_context ctx, uw_Basis_client cli, void *data) { |
137 uw_ensure_transaction(ctx); | 137 do { |
138 uw_get_app(ctx)->expunger(ctx, cli); | 138 uw_ensure_transaction(ctx); |
139 uw_commit(ctx); | 139 uw_get_app(ctx)->expunger(ctx, cli); |
140 } while (uw_commit(ctx) && (uw_rollback(ctx, 1), 1)); | |
140 } | 141 } |
141 | 142 |
142 void uw_post_expunge(uw_context ctx, void *data) { | 143 void uw_post_expunge(uw_context ctx, void *data) { |
143 } | 144 } |
144 | 145 |