On Mon, Jul 31, 2017 at 8:09 PM Nir Soffer <nsoffer@redhat.com> wrote:
On Mon, Jul 31, 2017 at 5:52 PM Petr Kotas <pkotas@redhat.com> wrote:
Hi,

I have encountered an issue with VDSM master when running tests.
Maybe I am doing something wrong, or I am overlooking something.

This is a clear master without any modification pulled with the latest commits.
Did anyone please encountered the same issue:

================================================== FAILURES ==================================================
______________________________________ TestDirectioChecker.test_path_ok ______________________________________

self = <storage.check_test.TestDirectioChecker testMethod=test_path_ok>

    def test_path_ok(self):
        self.checks = 1
        with temporaryPath(data=b"blah") as path:
            checker = check.DirectioChecker(self.loop, path, self.complete)
            checker.start()
            self.loop.run_forever()
            pprint.pprint(self.results)
            result = self.results[0]
>           delay = result.delay()

storage/check_test.py:82:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <CheckResult path=/var/tmp/tmpPpV1Rj rc=0 err=bytearray(b'0+1 records in\n0+1 ... copied, 0,000496228 s, 8,1 kB/s\n') time=4299448.73 elapsed=0.00 at 0x3b72390>

    def delay(self):
        # TODO: Raising MiscFileReadException for all errors to keep the old
        # behavior. Should probably use StorageDomainAccessError.
        if self.rc != 0:
            raise exception.MiscFileReadException(self.path, self.rc, self.err)
        if not self.err:
            raise exception.MiscFileReadException(self.path, "no stats")
        stats = self.err.splitlines()[-1]
        match = self._PATTERN.match(stats)
        if not match:
            raise exception.MiscFileReadException(self.path,
>                                                 "no match: %r" % stats)
E           MiscFileReadException: Internal file read failure: ('/var/tmp/tmpPpV1Rj', "no match: bytearray(b'4 bytes (4 B) copied, 0,000496228 s, 8,1 kB/s')")

../lib/vdsm/storage/check.py:372: MiscFileReadException
-------------------------------------------- Captured stdout call --------------------------------------------
[<CheckResult path=/var/tmp/tmpPpV1Rj rc=0 err=bytearray(b'0+1 records in\n0+1 records out\n4 bytes (4 B) copied, 0,000496228 s, 8,1 kB/s\n') time=4299448.73 elapsed=0.00 at 0x3b72390>]

This is the issue - your dd uses "," as decimal point: 0,000496228
We expect: 0.000496228

Can you share the output of "locale"? on the machine?

Here I get:

$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

Maybe we don't configure the test environment properly?

Dan, do you have any insite on this?

Nir