You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Julian Foad <ju...@wandisco.com> on 2010/09/27 14:00:07 UTC

NODES table - conditional compilation for op_depth

Philip and I have started implementing op_depth in the NODES table, but
we soon found there is more to do than simply calculating a value here
and there.

("Implementing op_depth" means enabling multiply nested
copies/replacements/adds/deletes etc., with the ability to revert at
each level.)

In the meantime, some tests were breaking, so we have made the full
op_depth support conditional on SVN_WC__OP_DEPTH.

Why?  The interim 0/1/2 op_depth values have been working OK in the
limited context of the amount of nesting that BASE+WORKING supports.  We
might want to make a transition from BASE_NODE/WORKING_NODE to NODES
first, before enabling the full op_depth support.  That is probably the
main reason why this further conditional is useful.  The alternative
would be to complete op_depth support before switching the default build
over to NODES.

Any concerns about working within SVN_WC__OP_DEPTH?

- Julian


Re: NODES table - conditional compilation for op_depth

Posted by Philip Martin <ph...@wandisco.com>.
Greg Stein <gs...@gmail.com> writes:

> Seems like this will make things even more complicated. I'd be in
> favor of *not* switching to NODES unless/until the op_depth is done
> properly. If you switch early, then you're going to require another
> format bump to reset all the op_depth fields to their proper values. I
> don't think an early-switch to NODES before proper op_depth
> computation will buy us anything.

There is an overhead to maintaining both sets of code.  It's possible
to build the wrong version, run regression tests with the wrong
version, or break the other version.

-- 
Philip

Re: NODES table - conditional compilation for op_depth

Posted by Greg Stein <gs...@gmail.com>.
Seems like this will make things even more complicated. I'd be in
favor of *not* switching to NODES unless/until the op_depth is done
properly. If you switch early, then you're going to require another
format bump to reset all the op_depth fields to their proper values. I
don't think an early-switch to NODES before proper op_depth
computation will buy us anything.

Cheers,
-g

On Mon, Sep 27, 2010 at 10:00, Julian Foad <ju...@wandisco.com> wrote:
> Philip and I have started implementing op_depth in the NODES table, but
> we soon found there is more to do than simply calculating a value here
> and there.
>
> ("Implementing op_depth" means enabling multiply nested
> copies/replacements/adds/deletes etc., with the ability to revert at
> each level.)
>
> In the meantime, some tests were breaking, so we have made the full
> op_depth support conditional on SVN_WC__OP_DEPTH.
>
> Why?  The interim 0/1/2 op_depth values have been working OK in the
> limited context of the amount of nesting that BASE+WORKING supports.  We
> might want to make a transition from BASE_NODE/WORKING_NODE to NODES
> first, before enabling the full op_depth support.  That is probably the
> main reason why this further conditional is useful.  The alternative
> would be to complete op_depth support before switching the default build
> over to NODES.
>
> Any concerns about working within SVN_WC__OP_DEPTH?
>
> - Julian
>
>
>