On 22 Aug 2019, at 15:51, Nir Soffer <nsoffer@redhat.com> wrote:

Sharing progress on python 3 work.

## 2 weeks ago
git checkout @{two.weeks.ago}
tox -e storage-py37
...
1448 passed, 103 skipped, 100 deselected, 322 xfailed, 236 warnings in 71.40 seconds

## Today
git checkout
tox -e storage-py37
...
1643 passed, 103 skipped, 100 deselected, 105 xfailed, 82 xpassed, 107 warnings in 79.72 seconds
Change:
passed: +195
skips: 0
xfail: -217
xpass: +107
warnings: -129

## XPASS

107 xpass are most likely easy fix, just remove the xfail() mark from the test or parameter.

Patches should not introduce new XPASS, you should remove all xfail() marks that a patch
fixes. To test that your patch do not introduce new XPASS, add this option to tox.ini:

[pytest]
xfail_strict = True

This converts XPASS to FAIL.

These modules need to be fixed:

$ egrep '^storage.+_test.py.+X' storage-py37.out 
storage/filevolume_test.py ...XXXxXXXXxXXX                               [ 19%]
storage/formatconverter_test.py XXXXXxxss                                [ 20%]
storage/merge_test.py XXXXXXxxxxXXxXxxxxxXxxxxxx                         [ 38%]
storage/nbd_test.py ssssssssssssX.                                       [ 49%]
storage/sd_manifest_test.py XXXXXXXXXxxxxxxxxxxxxxxxxxxxxxxx............ [ 65%]
storage/sdm_amend_volume_test.py xXxXxXxX                                [ 66%]
storage/sdm_copy_data_test.py xXXxxxxXXXXXxxxXXXxxXXxxXXx                [ 67%]
storage/sdm_merge_test.py xxxxXXX                                        [ 79%]
storage/sdm_update_volume_test.py xXxXxxXXxxXXxXxXxXxX.......            [ 81%]
storage/testlib_test.py xXXXxxXXXXXXXXxxxxxxxxxxxxxXxXxXxX..........     [ 87%]
storage/volume_metadata_test.py ..........................X............. [ 90%]


## xfail

We must fix these xfail before we can run OST. If we start running OST
we will waste days debugging OST. Debugging failing tests is 1000X times
faster.

I agree about the speed, OST is awfully slow, almost unusable. But other than that, not really, I discourage you from neglecting functional fixes and just focuse on unit tests.
It is important to fix actual functional problems
Coincidentally, just now I got a working OST on py3/RHEL8 just with a couple of workarounds/skips. So we should soon be able to have this (slow) safeguard in place and we’ll be able to eliminate py2/el7 code.

Thanks,
michal



$ egrep '^storage.+_test.py.+x' storage-py37.out
storage/blocksd_test.py ........x..........sssssssssss............       [  4%]
storage/blockvolume_test.py ...........xxxxxxxxx                         [  5%]
storage/fileutil_test.py ..xx....ss............................          [ 19%]
storage/filevolume_test.py ...XXXxXXXXxXXX                               [ 19%]
storage/formatconverter_test.py XXXXXxxss                                [ 20%]
storage/merge_test.py XXXXXXxxxxXXxXxxxxxXxxxxxx                         [ 38%]
storage/sd_manifest_test.py XXXXXXXXXxxxxxxxxxxxxxxxxxxxxxxx............ [ 65%]
storage/sdm_amend_volume_test.py xXxXxXxX                                [ 66%]
storage/sdm_copy_data_test.py xXXxxxxXXXXXxxxXXXxxXXxxXXx                [ 67%]
storage/sdm_merge_test.py xxxxXXX                                        [ 79%]
storage/sdm_update_volume_test.py xXxXxxXXxxXXxXxXxXxX.......            [ 81%]
storage/testlib_test.py xXXXxxXXXXXXXXxxxxxxxxxxxxxXxXxXxX..........     [ 87%]


## Skips

Skips should be used only when test cannot run on specific environment,
but I think we have some wrong skips that should have been xfail.

$ egrep '^storage.+_test.py.+s' storage-py37.out
storage/backends_test.py ss                                              [  2%]
storage/blockdev_test.py ssss....s                                       [  2%]
storage/blocksd_test.py ........x..........sssssssssss............       [  4%]
storage/devicemapper_test.py s.                                          [  9%]
storage/fileutil_test.py ..xx....ss............................          [ 19%]
storage/formatconverter_test.py XXXXXxxss                                [ 20%]
storage/loopback_test.py ssss                                            [ 31%]
storage/lvm_test.py ....................ssssssssssssssssssss             [ 33%]
storage/lvmfilter_test.py .....ss..........                              [ 35%]
storage/managedvolume_test.py ssssssssssssssssss....                     [ 36%]
storage/misc_test.py .................sssssssss...............ssss...... [ 41%]
storage/mount_test.py .........ss........ssssss                          [ 47%]
storage/nbd_test.py ssssssssssssX.                                       [ 49%]
storage/udev_multipath_test.py .......................s                  [ 88%]


## Warnings

See "warnings summary" in pytest output.

Looks less useful, report issues in packages we use instead of issues in our code.
But this may be an issue using old versions of packages.

See attached results created with:

tox -e storage-py37 > storage-py37.out 2>&1


Nir
<storage-py37.out>_______________________________________________
Devel mailing list -- devel@ovirt.org
To unsubscribe send an email to devel-leave@ovirt.org
Privacy Statement: https://www.ovirt.org/site/privacy-policy/
oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/
List Archives: https://lists.ovirt.org/archives/list/devel@ovirt.org/message/4C5AQCZPKEHQMLJ66NYFEOTEODXWVUR2/