All,

Please see the email I've just sent, entitled "Changes, Differences,
and States". I wanted to put down some thoughts and that's the best I
can do in the time. I hope it may shed a few glimmers of light in this
area.

- Julian


On 14 October 2015 at 16:37, Evgeny Kotkov <evgeny.kot...@visualsvn.com> wrote:
> Stefan Fuhrmann <stefan.fuhrm...@wandisco.com> writes:
>
>>> Exactly how does this change make the situation better in practice?  In
>>> other words, what particular use cases is it supposed to fix?
>>
>> Any use-case that depends on this information, IOW all those that you
>> are afraid may have been broken by the new API.
>
> [...]
>
>> * non-bubble-up directory representations, e.g. Brane's approach
>> * "native" support for move / rename possibly not creating a new ID
>>
>> I'm not saying that any of these will be implemented in the near future
>> but those ideas and proposals demonstrate that we cannot assume specifics
>> of the DAG implementation.
>
> So, this change doesn't improve any real use cases in the current code?
>
> Overall, I don't see how it's worth it, as there were no user-visible problems
> associated with the old code.  The new approach, on the contrary, has a 
> history
> of breaking at least two use cases, and there could be more:
>
>  - We were lucky to find and fix svn blame -g a year after the change was
>    committed.
>
>  - Now, a year and a half later, we have an issue with repositories behaving
>    differently in client-side operations like 'svn log' after dump/load. As
>    the dump/load is a well-known procedure, I am thinking that it's a serious
>    problem that could affect many users.
>
>  - This could only be a part of the problems we need to deal with, because
>    the low level behavior change from r1572363 + r1573111 propagates up to
>    higher levels like svn_repos or svn_ra and alters the behavior of many
>    different callers like svn_ra_get_file_revs2() or the update reporter.
>    Third-party API callers could not be ready for it as well, because public
>    API functions like svn_ra_get_file_revs2() didn't receive the erratum or
>    a bump.
>
> Johan Corveleyn <jcor...@gmail.com> writes:
>
>> I think the dump.c part of r1572363 and r1573111 should be reverted /
>> fixed so that we get the previous behaviour again, and this should be
>> backported to 1.9. At this point, IMO 'svnadmin dump' is broken in
>> 1.9.
>
> I would like to commit the patch that restores 1.8 behavior in all relevant
> places.  It fixes the svnadmin dump issue and should prevent other similar
> problems; see the attachment.
>
> Please note that the patch doesn't do something about our experimental FSX
> back end.  As it turns out, the behavior of the svn_fs_contents_changed() and
> svn_fs_props_changed() in FSX received a change even prior to the introduction
> of the new API, and happened in r1568600 [1].  Although we could restore the
> previous behavior for it, I am thinking that we should begin from fixing the
> problem for the stable FSFS and BDB back ends.
>
> Thoughts?
>
> [1] https://svn.apache.org/r1568600
>
>
> Regards,
> Evgeny Kotkov

Reply via email to