Title: tests.system.TestStreamingPull: test_streaming_pull_max_messages[rest-rest] failed · Issue #953 · googleapis/python-pubsub · GitHub
Open Graph Title: tests.system.TestStreamingPull: test_streaming_pull_max_messages[rest-rest] failed · Issue #953 · googleapis/python-pubsub
X Title: tests.system.TestStreamingPull: test_streaming_pull_max_messages[rest-rest] failed · Issue #953 · googleapis/python-pubsub
Description: This test failed! To configure my behavior, see the Flaky Bot documentation. If I'm commenting on this issue too often, add the flakybot: quiet label and I will stop commenting. commit: 26d2b39 buildURL: Build Status, Sponge status: fail...
Open Graph Description: This test failed! To configure my behavior, see the Flaky Bot documentation. If I'm commenting on this issue too often, add the flakybot: quiet label and I will stop commenting. commit: 26d2b39 bui...
X Description: This test failed! To configure my behavior, see the Flaky Bot documentation. If I'm commenting on this issue too often, add the flakybot: quiet label and I will stop commenting. commit: 26d2b39...
Opengraph URL: https://github.com/googleapis/python-pubsub/issues/953
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"tests.system.TestStreamingPull: test_streaming_pull_max_messages[rest-rest] failed","articleBody":"This test failed!\n\nTo configure my behavior, see [the Flaky Bot documentation](https://github.com/googleapis/repo-automation-bots/tree/main/packages/flakybot).\n\nIf I'm commenting on this issue too often, add the `flakybot: quiet` label and\nI will stop commenting.\n\n---\n\ncommit: 26d2b39cefcc1a250f1f75db233f7383a2040b6d\nbuildURL: [Build Status](https://source.cloud.google.com/results/invocations/d84680a4-0558-4f44-a35f-e84864bbad7a), [Sponge](http://sponge2/d84680a4-0558-4f44-a35f-e84864bbad7a)\nstatus: failed\n\u003cdetails>\u003csummary>Test output\u003c/summary>\u003cbr>\u003cpre>self = \u003ctests.system.TestStreamingPull object at 0x7f55475b28f0>\npublisher = \u003cgoogle.cloud.pubsub_v1.PublisherClient object at 0x7f5544354a60>\ntopic_path_base = 'projects/precise-truck-742/topics/t-1689361995945'\nsubscription_path_base = 'projects/precise-truck-742/subscriptions/s-1689361995947'\ncleanup = [(\u003cbound method PublisherClient.delete_topic of \u003cgoogle.cloud.pubsub_v1.PublisherClient object at 0x7f5544354a60>>, ()...39ab0>>, (), {'subscription': 'projects/precise-truck-742/subscriptions/s-1689361995947-streaming-pull-max-messages'})]\n\n def test_streaming_pull_max_messages(\n self, publisher, topic_path_base, subscription_path_base, cleanup\n ):\n subscriber = pubsub_v1.SubscriberClient(transport=\"grpc\")\n custom_str = \"-streaming-pull-max-messages\"\n topic_path = topic_path_base + custom_str\n subscription_path = subscription_path_base + custom_str\n # Make sure the topic and subscription get deleted.\n cleanup.append((publisher.delete_topic, (), {\"topic\": topic_path}))\n cleanup.append(\n (subscriber.delete_subscription, (), {\"subscription\": subscription_path})\n )\n \n # create a topic and subscribe to it\n publisher.create_topic(name=topic_path)\n subscriber.create_subscription(name=subscription_path, topic=topic_path)\n \n batch_sizes = (7, 4, 8, 2, 10, 1, 3, 8, 6, 1) # total: 50\n _publish_messages(publisher, topic_path, batch_sizes=batch_sizes)\n \n # now subscribe and do the main part, check for max pending messages\n total_messages = sum(batch_sizes)\n flow_control = types.FlowControl(max_messages=5)\n callback = StreamingPullCallback(\n processing_time=1, resolve_at_msg_count=total_messages\n )\n \n subscription_future = subscriber.subscribe(\n subscription_path, callback, flow_control=flow_control\n )\n \n # Expected time to process all messages in ideal case:\n # (total_messages / FlowControl.max_messages) * processing_time\n #\n # With total=50, max messages=5, and processing_time=1 this amounts to\n # 10 seconds (+ overhead), thus a full minute should be more than enough\n # for the processing to complete. If not, fail the test with a timeout.\n try:\n> callback.done_future.result(timeout=60)\n\ntests/system.py:654: \n_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ \n\nself = None, timeout = 60\n\n def result(self, timeout=None):\n \"\"\"Return the result of the call that the future represents.\n \n Args:\n timeout: The number of seconds to wait for the result if the future\n isn't done. If None, then there is no limit on the wait time.\n \n Returns:\n The result of the call that the future represents.\n \n Raises:\n CancelledError: If the future was cancelled.\n TimeoutError: If the future didn't finish executing before the given\n timeout.\n Exception: If the call raised then that exception will be raised.\n \"\"\"\n try:\n with self._condition:\n if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]:\n raise CancelledError()\n elif self._state == FINISHED:\n return self.__get_result()\n \n self._condition.wait(timeout)\n \n if self._state in [CANCELLED, CANCELLED_AND_NOTIFIED]:\n raise CancelledError()\n elif self._state == FINISHED:\n return self.__get_result()\n else:\n> raise TimeoutError()\nE concurrent.futures._base.TimeoutError\n\n/usr/local/lib/python3.10/concurrent/futures/_base.py:448: TimeoutError\n\nDuring handling of the above exception, another exception occurred:\n\nself = \u003ctests.system.TestStreamingPull object at 0x7f55475b28f0>\npublisher = \u003cgoogle.cloud.pubsub_v1.PublisherClient object at 0x7f5544354a60>\ntopic_path_base = 'projects/precise-truck-742/topics/t-1689361995945'\nsubscription_path_base = 'projects/precise-truck-742/subscriptions/s-1689361995947'\ncleanup = [(\u003cbound method PublisherClient.delete_topic of \u003cgoogle.cloud.pubsub_v1.PublisherClient object at 0x7f5544354a60>>, ()...39ab0>>, (), {'subscription': 'projects/precise-truck-742/subscriptions/s-1689361995947-streaming-pull-max-messages'})]\n\n def test_streaming_pull_max_messages(\n self, publisher, topic_path_base, subscription_path_base, cleanup\n ):\n subscriber = pubsub_v1.SubscriberClient(transport=\"grpc\")\n custom_str = \"-streaming-pull-max-messages\"\n topic_path = topic_path_base + custom_str\n subscription_path = subscription_path_base + custom_str\n # Make sure the topic and subscription get deleted.\n cleanup.append((publisher.delete_topic, (), {\"topic\": topic_path}))\n cleanup.append(\n (subscriber.delete_subscription, (), {\"subscription\": subscription_path})\n )\n \n # create a topic and subscribe to it\n publisher.create_topic(name=topic_path)\n subscriber.create_subscription(name=subscription_path, topic=topic_path)\n \n batch_sizes = (7, 4, 8, 2, 10, 1, 3, 8, 6, 1) # total: 50\n _publish_messages(publisher, topic_path, batch_sizes=batch_sizes)\n \n # now subscribe and do the main part, check for max pending messages\n total_messages = sum(batch_sizes)\n flow_control = types.FlowControl(max_messages=5)\n callback = StreamingPullCallback(\n processing_time=1, resolve_at_msg_count=total_messages\n )\n \n subscription_future = subscriber.subscribe(\n subscription_path, callback, flow_control=flow_control\n )\n \n # Expected time to process all messages in ideal case:\n # (total_messages / FlowControl.max_messages) * processing_time\n #\n # With total=50, max messages=5, and processing_time=1 this amounts to\n # 10 seconds (+ overhead), thus a full minute should be more than enough\n # for the processing to complete. If not, fail the test with a timeout.\n try:\n callback.done_future.result(timeout=60)\n except exceptions.TimeoutError:\n> pytest.fail(\n \"Timeout: receiving/processing streamed messages took too long.\"\n )\nE Failed: Timeout: receiving/processing streamed messages took too long.\n\ntests/system.py:656: Failed\u003c/pre>\u003c/details>","author":{"url":"https://github.com/apps/flaky-bot","@type":"Person","name":"flaky-bot"},"datePublished":"2023-07-14T19:20:37Z","url":"https://github.com/googleapis/python-pubsub/issues/953"}
| react-profiling | 0 |
| react-import-map | react,react-dom,react-dom/client,react-dom/profiling,react-is,react-reconciler,react/compiler-runtime,react/jsx-dev-runtime,react/jsx-runtime,scheduler@d5750093facf |
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:c39fe565-b807-6ec7-ddf8-5920101b6434 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | A840:2E3C3E:156D79:1C28D1:6AEBFAA9 |
| html-safe-nonce | 5438bd9673238ca648b279f6a96419c1667b0e4c378a10118c7b82461d2465bd |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBODQwOjJFM0MzRToxNTZENzk6MUMyOEQxOjZBRUJGQUE5IiwidmlzaXRvcl9pZCI6IjEyMzUxMjY2MzkyODAyNTc3MDUiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 1a0f37dab304e924d7d0e6029e20c900c12c3664ccc3f7e7531432cf7a4f6768 |
| hovercard-subject-tag | issue:1805423004 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/googleapis/python-pubsub/953/issue_layout |
| twitter:image | https://opengraph.githubassets.com/2dee31a78bc647d8235e26df654279711f7cfad504b77449e5f5f472271a3289/googleapis/python-pubsub/issues/953 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/2dee31a78bc647d8235e26df654279711f7cfad504b77449e5f5f472271a3289/googleapis/python-pubsub/issues/953 |
| og:image:alt | This test failed! To configure my behavior, see the Flaky Bot documentation. If I'm commenting on this issue too often, add the flakybot: quiet label and I will stop commenting. commit: 26d2b39 bui... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | flaky-bot[bot] |
| hostname | github.com |
| expected-hostname | github.com |
| None | d063d52022f5f270ef55a70761d126c8085d492d3c251084b07781784c02dad4 |
| turbo-cache-control | no-preview |
| go-import | github.com/googleapis/python-pubsub git https://github.com/googleapis/python-pubsub.git |
| octolytics-dimension-user_id | 16785467 |
| octolytics-dimension-user_login | googleapis |
| octolytics-dimension-repository_id | 226992581 |
| octolytics-dimension-repository_nwo | googleapis/python-pubsub |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 226992581 |
| octolytics-dimension-repository_network_root_nwo | googleapis/python-pubsub |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 56e59340194011ba3cb6809acfa979ccbd174288 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| react-app-name | issues |
Links:
Viewport: width=device-width