One of the main things blocking pristines-on-demand now is a few edge
case test failures.

It would be great if we could get some further eyes on these.

On the branch, these failures have been converted to XFAIL by adding
'@Wimp' decorators.

Some of them seem to fail even when run against the old WC format,
presumably due to changes that had to be made in libsvn_wc. I suppose
these are the most important to fix, to avoid regressions in existing
behaviour, whereas edge cases in the new pristines-on-demand mode can be
prioritised lower.

One ticket summarises all these test failures (except the auth-denied
case which is #4888):

  https://subversion.apache.org/issue/4891

Could anyone help review these test problems to see which might be
blockers and need fixing?


=== Windows-specific issues

A few of these are Windows-specific. I can't very well investigate those
myself. Who could volunteer to look at those? They are:

    externals_tests.py ... ... ...:
      update_modify_file_external(),
      remap_file_external_with_prop_del(),
      file_external_recorded_info():
        existing issue (Windows only)

These tests are commented with "# Existing issue: `src_stream` not
closed in externals.c:apply_textdelta()"

Does that mean it's a problem already on trunk? Or a hidden problem? If
someone could please take a look, that would be great. If not, could
anyone volunteer to test a possible fix if one of us unixers made a guess?


=== The other issues

    basic_tests.py 8 basic_commit_corruption
    basic_tests.py 9 basic_update_corruption
    revert_tests.py 2 revert_reexpand_keyword
    trans_tests.py 1 keywords_from_birth
    trans_tests.py 3 eol_change_is_text_mod
    update_tests.py 57 skip_access_denied
    upgrade_tests.py 16 replaced_files
    upgrade_tests.py 7 basic_upgrade_1_0

(I obtained the list by diffing the tests on trunk and the branch,
looking for addition of "@Wimp" and similar on the branch tests.)

Daniel, you already investigated and commented on some of them. Might
you have some time to look further? If so, may I propose you start at
the beginning of this list, as you have already added insightful
comments/tests/investigations about some of those.

I will now start at the end of that list and work backwards. I will
spend just a short time on each working out whether it's an easy fix,
fixing if so, and postponing if not. So that we meet somewhere in the
middle and don't overlap, I will post each time I work through a test or
small group of similar tests (such as the two 'trans' tests).


=== Running a test case

Quick reminder on running a test case with a specific WC format:

$ (SRC_DIR=...; cd obj-dir/subversion/tests/cmdline/ && \
    python3 $SRC_DIR/subversion/tests/cmdline/basic_tests.py 8 \
    --bin=$SRC_DIR/bin \
    --config-file=$SRC_DIR/subversion/tests/tests.conf \
    --wc-format-version=1.15 )

Remember to test also with --wc-format-version=1.8.

Thanks,

- Julian


Reply via email to