On Wed, Nov 02, 2011 at 12:59:31PM +0000, Philip Martin wrote: > Stefan Sperling <s...@elego.de> writes: > > > On Tue, Nov 01, 2011 at 06:36:26PM +0000, Philip Martin wrote: > >> Is sorting in C better than putting UNIQUE on the local_relpath column? > > > > I don't know. I don't mind either way. Let's pick whichever is faster. > > > > The notification/cancellation fix is needed in either case. > > I think the cacellation change is wrong. This is happening inside an > SQLite transaction. When the user cancels a delete operation during > notification the cancel callback will return an svn_error_t causing the > transaction to abort. That means that no change will have been made to > the database. I don't see how postponing that abort until all the > notifications have been made is an improvement.
The transaction is already done when notification happens. See wc_db.c:with_finalization() -- notification is performed by the work_cb() callback, not the txn_cb() callback.