Build: #4 failed

Job: Multiprovider basic failed

Stages & jobs

  1. Qnthack - copy quarantine

  2. Acceptance Test

  3. Qnthack - rerun

    Final

user uploads file on one provider sees its distribution reads half of file on other provider using cdmi and again sees its distribution[1oz 2op deployed]: Test case result

The below summarizes the result of the test " user uploads file on one provider sees its distribution reads half of file on other provider using cdmi and again sees its distribution[1oz 2op deployed]" in build 4 of Onedata Products - gui acceptance pkg - feature-VFS-12098-test-couchbase-upgrade-to-6.x-from-4.1 - Multiprovider basic.
Description
user uploads file on one provider sees its distribution reads half of file on other provider using cdmi and again sees its distribution[1oz 2op deployed]
Test class
gui.scenarios.test_multiprovider_basic
Method
test_user_uploads_file_on_one_provider_sees_its_distribution_reads_half_of_file_on_other_provider_using_cdmi_and_again_sees_its_distribution[1oz_2op_deployed]
Duration
3 mins
Status
Failed (New Failure)

Error Log

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='10.244.51.69', port=443): Read timed out.
self = <urllib3.response.HTTPResponse object at 0x7f60440e6830>

    @contextmanager
    def _error_catcher(self) -> typing.Generator[None, None, None]:
        """
        Catch low-level python exceptions, instead re-raising urllib3
        variants, so that low-level exceptions are not leaked in the
        high-level api.
    
        On exit, release the connection back to the pool.
        """
        clean_exit = False
    
        try:
            try:
>               yield

/usr/local/lib/python3.12/dist-packages/urllib3/response.py:748: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.12/dist-packages/urllib3/response.py:873: in _raw_read
    data = self._fp_read(amt, read1=read1) if not fp_closed else b""
/usr/local/lib/python3.12/dist-packages/urllib3/response.py:856: in _fp_read
    return self._fp.read(amt) if amt is not None else self._fp.read()
/usr/lib/python3.12/http/client.py:479: in read
    s = self.fp.read(amt)
/usr/lib/python3.12/socket.py:707: in readinto
    return self._sock.recv_into(b)
/usr/lib/python3.12/ssl.py:1252: in recv_into
    return self.read(nbytes, buffer)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <ssl.SSLSocket [closed] fd=-1, family=2, type=1, proto=6>, len = 8192
buffer = <memory at 0x7f60445c9c00>

    def read(self, len=1024, buffer=None):
        """Read up to LEN bytes and return them.
        Return zero-length string on EOF."""
    
        self._checkClosed()
        if self._sslobj is None:
            raise ValueError("Read on closed or unwrapped SSL socket.")
        try:
            if buffer is not None:
>               return self._sslobj.read(len, buffer)
E               TimeoutError: The read operation timed out

/usr/lib/python3.12/ssl.py:1104: TimeoutError

The above exception was the direct cause of the following exception:

    def generate():
        # Special case for urllib3.
        if hasattr(self.raw, "stream"):
            try:
>               yield from self.raw.stream(chunk_size, decode_content=True)

/usr/local/lib/python3.12/dist-packages/requests/models.py:820: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
/usr/local/lib/python3.12/dist-packages/urllib3/response.py:1060: in stream
    data = self.read(amt=amt, decode_content=decode_content)
/usr/local/lib/python3.12/dist-packages/urllib3/response.py:949: in read
    data = self._raw_read(amt)
/usr/local/lib/python3.12/dist-packages/urllib3/response.py:872: in _raw_read
    with self._error_catcher():
/usr/lib/python3.12/contextlib.py:158: in __exit__
    self.gen.throw(value)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <urllib3.response.HTTPResponse object at 0x7f60440e6830>

    @contextmanager
    def _error_catcher(self) -> typing.Generator[None, None, None]:
        """
        Catch low-level python exceptions, instead re-raising urllib3
        variants, so that low-level exceptions are not leaked in the
        high-level api.
    
        On exit, release the connection back to the pool.
        """
        clean_exit = False
    
        try:
            try:
                yield
    
            except SocketTimeout as e:
                # FIXME: Ideally we'd like to include the url in the ReadTimeoutError but
                # there is yet no clean way to get at it from this context.
>               raise ReadTimeoutError(self._pool, None, "Read timed out.") from e  # type: ignore[arg-type]
E               urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='10.244.51.69', port=443): Read timed out.

/usr/local/lib/python3.12/dist-packages/urllib3/response.py:753: ReadTimeoutError

During handling of the above exception, another exception occurred:

fixturefunc = <function partial_read_from_file_using_cdmi at 0x7f604536a020>
request = <FixtureRequest for <Function test_user_uploads_file_on_one_provider_sees_its_distribution_reads_half_of_file_on_other_provider_using_cdmi_and_again_sees_its_distribution[1oz_2op_deployed]>>
kwargs = {'cdmi': <class 'tests.gui.utils.oneservices.cdmi.CDMIClient'>, 'end': 20, 'hosts': {'oneprovider-1': {'container-id':...ezone.default.svc.cluster.local', 'ip': '10.244.51.66', 'name': 'dev-onezone', ...}}, 'path': '/space1/20B-0.txt', ...}

    def call_fixture_func(
        fixturefunc: "_FixtureFunc[FixtureValue]", request: FixtureRequest, kwargs
    ) -> FixtureValue:
        if is_generator(fixturefunc):
            fixturefunc = cast(
                Callable[..., Generator[FixtureValue, None, None]], fixturefunc
            )
            generator = fixturefunc(**kwargs)
            try:
                fixture_result = next(generator)
            except StopIteration:
                raise ValueError(f"{request.fixturename} did not yield a value") from None
            finalizer = functools.partial(_teardown_yield_fixture, fixturefunc, generator)
            request.addfinalizer(finalizer)
        else:
            fixturefunc = cast(Callable[..., FixtureValue], fixturefunc)
>           fixture_result = fixturefunc(**kwargs)

/usr/local/lib/python3.12/dist-packages/_pytest/fixtures.py:913: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
tests/utils/bdd_utils.py:78: in wrapper
    return fun(*ba.args, **ba.kwargs)
/usr/local/lib/python3.12/dist-packages/decorator.py:232: in fun
    return caller(func, *(extras + args), **kw)
tests/utils/utils.py:93: in wrapper
    return fun(*args, **kwargs)
tests/gui/steps/rest/cdmi.py:30: in partial_read_from_file_using_cdmi
    print(client.read_from_file(path, read_range=(start, end)))
tests/gui/utils/oneservices/cdmi.py:82: in read_from_file
    return http_get(self.ip, self.port, parsed_path, headers=headers,
tests/utils/rest_utils.py:47: in http_get
    return http_request(requests.get, ip, port, path, use_ssl, headers,
tests/utils/rest_utils.py:83: in http_request
    response = http_method('{0}://{1}:{2}{3}'.format(protocol, ip, port, path),
/usr/local/lib/python3.12/dist-packages/requests/api.py:73: in get
    return request("get", url, params=params, **kwargs)
/usr/local/lib/python3.12/dist-packages/requests/api.py:59: in request
    return session.request(method=method, url=url, **kwargs)
/usr/local/lib/python3.12/dist-packages/requests/sessions.py:589: in request
    resp = self.send(prep, **send_kwargs)
/usr/local/lib/python3.12/dist-packages/requests/sessions.py:746: in send
    r.content
/usr/local/lib/python3.12/dist-packages/requests/models.py:902: in content
    self._content = b"".join(self.iter_content(CONTENT_CHUNK_SIZE)) or b""
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

    def generate():
        # Special case for urllib3.
        if hasattr(self.raw, "stream"):
            try:
                yield from self.raw.stream(chunk_size, decode_content=True)
            except ProtocolError as e:
                raise ChunkedEncodingError(e)
            except DecodeError as e:
                raise ContentDecodingError(e)
            except ReadTimeoutError as e:
>               raise ConnectionError(e)
E               requests.exceptions.ConnectionError: HTTPSConnectionPool(host='10.244.51.69', port=443): Read timed out.

/usr/local/lib/python3.12/dist-packages/requests/models.py:826: ConnectionError