RE: svn commit: r1657846 - in /subversion/trunk/subversion/libsvn_wc: wc-queries.sql wc_db.c wc_db.h wc_db_private.h wc_db_update_move.c
From: Bert Huijben <bert_at_qqmail.nl>
Date: Fri, 6 Feb 2015 16:48:23 +0100
> -----Original Message-----
This is just an intermediate state that doesn't exist outside the sqlite transaction that we run the code in.
The previous intermediate state, could (when the transaction would be stopped halfway) cause some differences between the working copy and the repository. While the new code keeps the database valid.
But as noted: all this is inside a transaction, so if something fails it is not committed.
The problem with the old code is that we had all kinds of bad intermediate states, which some other code at a later stage (mostly accidentally) fixed. I'm trying to keep things in logical operations now, that could be performed by itself (outside the global move-update) transaction, without leaving the database inconsistent.
And as it is just WC state, 1.8 (and in theory 1.7) could just handle this intermediate state. (The previous intermediate state would give an out of date on commit as the lower layer wasn't deleted)
This is an archived mail posted to the Subversion Dev mailing list.