To make the new single-txn delete pass the regression tests I had to
make it leave ACTUAL_NODE rows with tree conflicts.  This preserved the
behaviour of the old per-node delete code, but I'm wondering if that is
the correct thing to do.  I suspect that the current behaviour is, in
part at least, accidental--I think is stems from the time when tree
conflicts were stored on the parent node and so deleting a conflicted
node would leave the tree conflict unless the parent node was also
modified.

The current behaviour is that if I have a node in conflict:

$ svn st wc
R     C wc/A/f
      >   local add, incoming add upon update
Summary of conflicts:
  Tree conflicts: 1

and I delete the conflicted node:

$ svn rm --force wc/A/f
D         wc/A/f

it remains in conflict:

$ svn st wc
D     C wc/A/f
      >   local add, incoming add upon update
Summary of conflicts:
  Tree conflicts: 1

I'd like to change this so that delete removes the ACTUAL_NODE row and
thus automatically resolves the conflict.

Anybody see any problems that would arise?

It also solves one of the orphaned ACTUAL_NODE problems: if the
conflicted node is within an added tree then deleting the tree and
leaving the ACTUAL_NODE row could result in an ACTUAL_NODE that has no
parents.

-- 
Philip

Reply via email to