Uploaded image for project: 'Motor'
  1. Motor
  2. MOTOR-1182

[Build Failure] test.tornado_tests.test_motor_client.MotorClientExhaustCursorTest

    • Type: Icon: Build Failure Build Failure
    • Resolution: Fixed
    • Priority: Icon: Unknown Unknown
    • 3.3.2
    • Affects Version/s: None
    • Component/s: None
    • None

      https://spruce.mongodb.com/task/motor_main__ssl~nossl_tox_env~test_pymongo_latest_os~rhel84_test_4.4_replica_set_47ff33f5851b627dd7cf19d049ff40a37c029fcd_23_08_29_20_42_04/tests?execution=0&sortBy=STATUS&sortDir=ASC

      test.tornado_tests.test_motor_client.MotorClientExhaustCursorTest.test_exhaust_query_server_error_rs

      [2023/08/29 20:59:19.737] FAILURE: concurrent.futures._base.TimeoutError: Operation timed out after 30.0 seconds ()
      [2023/08/29 20:59:19.737] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/testing.py:102: in __call__
      [2023/08/29 20:59:19.737]     result = self.orig_method(*args, **kwargs)
      [2023/08/29 20:59:19.737] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/testing.py:663: in post_coroutine
      [2023/08/29 20:59:19.737]     functools.partial(coro, self, *args, **kwargs), timeout=timeout
      [2023/08/29 20:59:19.737] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
      [2023/08/29 20:59:19.737] self = <tornado.platform.asyncio.AsyncIOLoop object at 0x7f316d2f59d0>
      [2023/08/29 20:59:19.737] func = functools.partial(<function MotorClientExhaustCursorTest.test_exhaust_query_server_error_rs at 0x7f31858eb440>, <test.tornado_tests.test_motor_client.MotorClientExhaustCursorTest testMethod=test_exhaust_query_server_error_rs>)
      [2023/08/29 20:59:19.737] timeout = 30.0
      [2023/08/29 20:59:19.737]     def run_sync(self, func: Callable, timeout: Optional[float] = None) -> Any:
      [2023/08/29 20:59:19.737]         """Starts the `IOLoop`, runs the given function, and stops the loop.
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         The function must return either an awaitable object or
      [2023/08/29 20:59:19.737]         ``None``. If the function returns an awaitable object, the
      [2023/08/29 20:59:19.737]         `IOLoop` will run until the awaitable is resolved (and
      [2023/08/29 20:59:19.737]         `run_sync()` will return the awaitable's result). If it raises
      [2023/08/29 20:59:19.737]         an exception, the `IOLoop` will stop and the exception will be
      [2023/08/29 20:59:19.737]         re-raised to the caller.
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         The keyword-only argument ``timeout`` may be used to set
      [2023/08/29 20:59:19.737]         a maximum duration for the function.  If the timeout expires,
      [2023/08/29 20:59:19.737]         a `asyncio.TimeoutError` is raised.
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         This method is useful to allow asynchronous calls in a
      [2023/08/29 20:59:19.737]         ``main()`` function::
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]             async def main():
      [2023/08/29 20:59:19.737]                 # do stuff...
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]             if __name__ == '__main__':
      [2023/08/29 20:59:19.737]                 IOLoop.current().run_sync(main)
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         .. versionchanged:: 4.3
      [2023/08/29 20:59:19.737]            Returning a non-``None``, non-awaitable value is now an error.
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         .. versionchanged:: 5.0
      [2023/08/29 20:59:19.737]            If a timeout occurs, the ``func`` coroutine will be cancelled.
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         .. versionchanged:: 6.2
      [2023/08/29 20:59:19.737]            ``tornado.util.TimeoutError`` is now an alias to ``asyncio.TimeoutError``.
      [2023/08/29 20:59:19.737]         """
      [2023/08/29 20:59:19.737]         future_cell = [None]  # type: List[Optional[Future]]
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         def run() -> None:
      [2023/08/29 20:59:19.737]             try:
      [2023/08/29 20:59:19.737]                 result = func()
      [2023/08/29 20:59:19.737]                 if result is not None:
      [2023/08/29 20:59:19.737]                     from tornado.gen import convert_yielded
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]                     result = convert_yielded(result)
      [2023/08/29 20:59:19.737]             except Exception:
      [2023/08/29 20:59:19.737]                 fut = Future()  # type: Future[Any]
      [2023/08/29 20:59:19.737]                 future_cell[0] = fut
      [2023/08/29 20:59:19.737]                 future_set_exc_info(fut, sys.exc_info())
      [2023/08/29 20:59:19.737]             else:
      [2023/08/29 20:59:19.737]                 if is_future(result):
      [2023/08/29 20:59:19.737]                     future_cell[0] = result
      [2023/08/29 20:59:19.737]                 else:
      [2023/08/29 20:59:19.737]                     fut = Future()
      [2023/08/29 20:59:19.737]                     future_cell[0] = fut
      [2023/08/29 20:59:19.737]                     fut.set_result(result)
      [2023/08/29 20:59:19.737]             assert future_cell[0] is not None
      [2023/08/29 20:59:19.737]             self.add_future(future_cell[0], lambda future: self.stop())
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]         self.add_callback(run)
      [2023/08/29 20:59:19.737]         if timeout is not None:
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]             def timeout_callback() -> None:
      [2023/08/29 20:59:19.737]                 # If we can cancel the future, do so and wait on it. If not,
      [2023/08/29 20:59:19.737]                 # Just stop the loop and return with the task still pending.
      [2023/08/29 20:59:19.737]                 # (If we neither cancel nor wait for the task, a warning
      [2023/08/29 20:59:19.737]                 # will be logged).
      [2023/08/29 20:59:19.737]                 assert future_cell[0] is not None
      [2023/08/29 20:59:19.737]                 if not future_cell[0].cancel():
      [2023/08/29 20:59:19.737]                     self.stop()
      [2023/08/29 20:59:19.737] 
      [2023/08/29 20:59:19.737]             timeout_handle = self.add_timeout(self.time() + timeout, timeout_callback)
      [2023/08/29 20:59:19.737]         self.start()
      [2023/08/29 20:59:19.737]         if timeout is not None:
      [2023/08/29 20:59:19.737]             self.remove_timeout(timeout_handle)
      [2023/08/29 20:59:19.737]         assert future_cell[0] is not None
      [2023/08/29 20:59:19.737]         if future_cell[0].cancelled() or not future_cell[0].done():
      [2023/08/29 20:59:19.737] >           raise TimeoutError("Operation timed out after %s seconds" % timeout)
      [2023/08/29 20:59:19.737] E           concurrent.futures._base.TimeoutError: Operation timed out after 30.0 seconds
      [2023/08/29 20:59:19.737] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/ioloop.py:528: TimeoutError
      

      test.tornado_tests.test_motor_client.MotorClientExhaustCursorTest.test_exhaust_query_server_error_standalone

      
       [2023/08/29 20:59:19.786] FAILURE: concurrent.futures._base.TimeoutError: Operation timed out after 30.0 seconds ()
       [2023/08/29 20:59:19.786] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/testing.py:102: in __call__
       [2023/08/29 20:59:19.786]     result = self.orig_method(*args, **kwargs)
       [2023/08/29 20:59:19.786] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/testing.py:663: in post_coroutine
       [2023/08/29 20:59:19.786]     functools.partial(coro, self, *args, **kwargs), timeout=timeout
       [2023/08/29 20:59:19.786] _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
       [2023/08/29 20:59:19.786] self = <tornado.platform.asyncio.AsyncIOLoop object at 0x7f31840d8450>
       [2023/08/29 20:59:19.786] func = functools.partial(<function MotorClientExhaustCursorTest.test_exhaust_query_server_error_standalone at 0x7f31858eb290>...st.tornado_tests.test_motor_client.MotorClientExhaustCursorTest testMethod=test_exhaust_query_server_error_standalone>)
       [2023/08/29 20:59:19.786] timeout = 30.0
       [2023/08/29 20:59:19.786]     def run_sync(self, func: Callable, timeout: Optional[float] = None) -> Any:
       [2023/08/29 20:59:19.786]         """Starts the `IOLoop`, runs the given function, and stops the loop.
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         The function must return either an awaitable object or
       [2023/08/29 20:59:19.786]         ``None``. If the function returns an awaitable object, the
       [2023/08/29 20:59:19.786]         `IOLoop` will run until the awaitable is resolved (and
       [2023/08/29 20:59:19.786]         `run_sync()` will return the awaitable's result). If it raises
       [2023/08/29 20:59:19.786]         an exception, the `IOLoop` will stop and the exception will be
       [2023/08/29 20:59:19.786]         re-raised to the caller.
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         The keyword-only argument ``timeout`` may be used to set
       [2023/08/29 20:59:19.786]         a maximum duration for the function.  If the timeout expires,
       [2023/08/29 20:59:19.786]         a `asyncio.TimeoutError` is raised.
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         This method is useful to allow asynchronous calls in a
       [2023/08/29 20:59:19.786]         ``main()`` function::
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]             async def main():
       [2023/08/29 20:59:19.786]                 # do stuff...
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]             if __name__ == '__main__':
       [2023/08/29 20:59:19.786]                 IOLoop.current().run_sync(main)
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         .. versionchanged:: 4.3
       [2023/08/29 20:59:19.786]            Returning a non-``None``, non-awaitable value is now an error.
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         .. versionchanged:: 5.0
       [2023/08/29 20:59:19.786]            If a timeout occurs, the ``func`` coroutine will be cancelled.
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         .. versionchanged:: 6.2
       [2023/08/29 20:59:19.786]            ``tornado.util.TimeoutError`` is now an alias to ``asyncio.TimeoutError``.
       [2023/08/29 20:59:19.786]         """
       [2023/08/29 20:59:19.786]         future_cell = [None]  # type: List[Optional[Future]]
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         def run() -> None:
       [2023/08/29 20:59:19.786]             try:
       [2023/08/29 20:59:19.786]                 result = func()
       [2023/08/29 20:59:19.786]                 if result is not None:
       [2023/08/29 20:59:19.786]                     from tornado.gen import convert_yielded
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]                     result = convert_yielded(result)
       [2023/08/29 20:59:19.786]             except Exception:
       [2023/08/29 20:59:19.786]                 fut = Future()  # type: Future[Any]
       [2023/08/29 20:59:19.786]                 future_cell[0] = fut
       [2023/08/29 20:59:19.786]                 future_set_exc_info(fut, sys.exc_info())
       [2023/08/29 20:59:19.786]             else:
       [2023/08/29 20:59:19.786]                 if is_future(result):
       [2023/08/29 20:59:19.786]                     future_cell[0] = result
       [2023/08/29 20:59:19.786]                 else:
       [2023/08/29 20:59:19.786]                     fut = Future()
       [2023/08/29 20:59:19.786]                     future_cell[0] = fut
       [2023/08/29 20:59:19.786]                     fut.set_result(result)
       [2023/08/29 20:59:19.786]             assert future_cell[0] is not None
       [2023/08/29 20:59:19.786]             self.add_future(future_cell[0], lambda future: self.stop())
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]         self.add_callback(run)
       [2023/08/29 20:59:19.786]         if timeout is not None:
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]             def timeout_callback() -> None:
       [2023/08/29 20:59:19.786]                 # If we can cancel the future, do so and wait on it. If not,
       [2023/08/29 20:59:19.786]                 # Just stop the loop and return with the task still pending.
       [2023/08/29 20:59:19.786]                 # (If we neither cancel nor wait for the task, a warning
       [2023/08/29 20:59:19.786]                 # will be logged).
       [2023/08/29 20:59:19.786]                 assert future_cell[0] is not None
       [2023/08/29 20:59:19.786]                 if not future_cell[0].cancel():
       [2023/08/29 20:59:19.786]                     self.stop()
       [2023/08/29 20:59:19.786] 
       [2023/08/29 20:59:19.786]             timeout_handle = self.add_timeout(self.time() + timeout, timeout_callback)
       [2023/08/29 20:59:19.786]         self.start()
       [2023/08/29 20:59:19.786]         if timeout is not None:
       [2023/08/29 20:59:19.786]             self.remove_timeout(timeout_handle)
       [2023/08/29 20:59:19.786]         assert future_cell[0] is not None
       [2023/08/29 20:59:19.786]         if future_cell[0].cancelled() or not future_cell[0].done():
       [2023/08/29 20:59:19.786] >           raise TimeoutError("Operation timed out after %s seconds" % timeout)
       [2023/08/29 20:59:19.786] E           concurrent.futures._base.TimeoutError: Operation timed out after 30.0 seconds
       [2023/08/29 20:59:19.786] .tox/test-pymongo-latest/lib/python3.7/site-packages/tornado/ioloop.py:528: TimeoutError
      

            Assignee:
            shane.harvey@mongodb.com Shane Harvey
            Reporter:
            steve.silvester@mongodb.com Steve Silvester
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: