On Mon, Dec 9, 2013 at 11:03 PM, Ivan Zhakov <ivan_at_visualsvn.com> wrote:
> On 5 December 2013 00:15, Stefan Fuhrmann <stefan.fuhrmann_at_wandisco.com>
> > Hi all,
> > I've spent the last two days getting our test suite to pass
> > with our backward compat option. That mostly worked for
> > 1.5 through 1.9 (with one exception).
> > The problem is however, that we not only create repositories
> > in the respective older format version but also expect the
> > server to behave as the respective older release does. This
> > causes two types of problems:
> > * Tests depending on server capabilities see unexpected
> > behavior, e.g. srv-min-ver=6 against a 1.9 svnserve:
> > FAIL: prop_tests.py 34: test revprop atomicity guarantees of libsvn_ra
> > (because the server has *_ATOMIC_REVPROP capability)
> > Pre-1.5 tests show even more discrepancies like different
> > wording in error messages etc. So, this class of tests cannot
> > run against a new server then advertised.
> > * Many more tests fail when the test are actually run against
> > a svnserve of the specified minor version because the
> > respective feature, e.g. svnrdump / svnsync, are not
> > available at all.
> > Thus, we can't use that combination, to verify that old data
> > (still) gets processed correctly.
> > Apart for skipping many tests, there is no way to make the
> > current test suite pass for pre-1.7 server and data.
> > Suggestion: Redefine / introduce new options:
> > --server-minor-version (actual server version)
> > --repository-minor-version (highest format supported by SVN 1.minor)
> > --created-minor-version (create repositories with this older format
> > and then upgrade to --repository-minor-version).
> > Given that most feature presence checks test for mergeinfo,
> > it should not be too hard to move existing tests over to the
> > new scheme.
> I'm not familiar with how test suite implemented, but your suggestions
> sounds good for me as test suite 'user'. For me
> --server-minor-version is for RA compatibility, so we need something
> different for FS version to test.
Technically, it's not so much about the RA layer / lib but also
about the actual older servers behaving differently (e.g. producing
slightly different error messages; reporting different caps etc.).
> [Bikeshed mode] May be it's better to use '--repository-version' and
> '--upgrade-repository-from' to use full version number?
Sounds good. January project.
Received on 2013-12-22 14:20:23 CET