Uh oh!
There was an error while loading. Please reload this page.
Attempt retry hook for flaky regression test cases. - #535
Conversation
coveralls
commented
Jan 12, 2015
Changes Unknown when pulling 09431a8 on dhermes:retry-flaky-regression-cases into * on GoogleCloudPlatform:master*. |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
silvolu
commented
Jan 14, 2015
I think that for time based errors (e.g. exceeding QPS for a certain API method) we should bake the retry logic into the library itself, providing default values for max retries, error codes and messages to retry on, but allowing the user to override all of those. |
dhermes
commented
Jan 14, 2015
@silvolu AFAIK the regression test issues are not due to QPS issues, just intermittent failures or sometimes due to eventual-ness of consistency (though this "shouldn't" happen since usually this is for queries on data inserted weeks prior via |
silvolu
commented
Jan 14, 2015
Oh sorry, got confused with gcloud-ruby (and didn't read this issue with enough attention) |
09431a8 to
381e1f9Comparecoveralls
commented
Jan 15, 2015
Changes Unknown when pulling 381e1f9 on dhermes:retry-flaky-regression-cases into * on GoogleCloudPlatform:master*. |
dhermes
commented
Jan 15, 2015
Another one that failed the first time but not on retry: |
dhermes
commented
Jan 15, 2015
Fixesgoogleapis#531. To "test" that this works, feel free to add a test case like: x = 0 def test_retry(self): # Feel free to vary 3 higher and higher, should always be # NUM_RETRIES in the final error message. if self.x < 3: self.x += 1 self.assertEqual(self.x, object()) # Fails else: self.assertTrue(True)
381e1f9 to
a060dc7Comparedhermes
commented
Jan 17, 2015
@tseaver It seems the last contention here was in allowing |
tseaver
commented
Jan 17, 2015
I'll defer to your report that it failed on the first pass, but passed soon after (although I think we likely have something smelly in the testcase, that would be a different issue). |
dhermes
commented
Jan 17, 2015
@tseaver I'm looking into the smelliness. The second failure referenced in the bug is due to a non-transactional There are also three tests cases which rely on Shall I make these transactional and remove Also, looking through history it seems this 404 on storage key delete (during module cleanup) occurs pretty often. Our delete code and / or library code seems to have an issue with data staleness. That also may be smelly and maybe we don't need any retries? The piece I seem to remember failing is in query=datastore.Query(kind='Character', ancestor=datastore.Key('Book', 'GoT'),
[('appearances', '>=', 20)])
expected_matches=6entities=list(query.fetch(limit=7))
len(entities) ==6but I checked all the failed builds and it's in none of those (it still may have occurred, but in a build we retried). |
dhermes
commented
Jan 17, 2015
Also removing AssertionError from list of retry classes.
coveralls
commented
Jan 19, 2015
dhermes
commented
Jan 19, 2015
@tseaver I made the datastore |
tseaver
commented
Jan 22, 2015
LGTM |
dhermes
commented
Jan 22, 2015
@tseaver I did some "soul-searching" on this and realized:
I'm going to submit a PR (#562) with just the transactional puts and then figure out what to do about the rest. Adding don't merge label for now. |
This is to address flaky test failures. See googleapis#535 for more discussion.
dhermes
commented
Jan 22, 2015
@jgeewax Do we have a contact on the We are seeing a non-trivial number of failures of This failure is because,
forkeyinbucket:
...occurs, hence a fresh API request to list the objects) |
craigcitro
commented
Jan 22, 2015
summoning @thobrla , expert on all things storage! |
Fixesgoogleapis#531. See googleapis#535 for context.
thobrla
commented
Jan 22, 2015
|
dhermes
commented
Jan 22, 2015
Thanks for the help @thobrla! I filed #564 to remove the Closing out this now defunct PR. @tseaver I'll keep around the metaclass branch for awhile in case we decide to put it back. Thanks for pushing back about the "something smelly" in our test failures! I'd guess we would need to address |
* feat: added GitIntegrationSettings to the Agent PiperOrigin-RevId: 546946304 Source-Link: googleapis/googleapis@5cfc6d1 Source-Link: googleapis/googleapis-gen@734b6e5 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNzM0YjZlNTNmZGY5NzZiMzNkMWNhYjJjN2I1YmNlMDk5OWU5N2ZjZCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
* chore(python): drop python 3.6 Source-Link: googleapis/synthtool@4f89b13 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:e7bb19d47c13839fe8c147e50e02e8b6cf5da8edd1af8b82208cd6f66cc2829c * add api_description to .repo-metadata.json * require python 3.7+ in setup.py * remove python 3.6 sample configs * remove require check for python 3.6 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com> Co-authored-by: Anthonios Partheniou <partheniou@google.com>
* feat: added overrides_by_request_protocol to backend.proto feat: added field proto_reference_documentation_uri to proto reference documentation. feat: added SERVICE_NOT_VISIBLE and GCP_SUSPENDED into error reason PiperOrigin-RevId: 517437454 Source-Link: googleapis/googleapis@ecb1cf0 Source-Link: googleapis/googleapis-gen@8731b8f Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiODczMWI4ZmQyMDQ0YTkzYzMyMzA5ZDYzM2RmYzJlODM2YmYxM2NiZiJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * docs: Fix formatting of request arg in docstring chore: Update gapic-generator-python to v1.9.1 PiperOrigin-RevId: 518604533 Source-Link: googleapis/googleapis@8a085ae Source-Link: googleapis/googleapis-gen@b2ab4b0 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiYjJhYjRiMGEwYWUyOTA3ZTgxMmMyMDkxOThhNzRlMDg5OGFmY2IwNCJ9 * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Source-Link: googleapis/synthtool@6ed3a83 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:3abfa0f1886adaf0b83f07cb117b24a639ea1cb9cffe56d43280b977033563eb Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Source-Link: googleapis/synthtool@6ed3a83 Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:3abfa0f1886adaf0b83f07cb117b24a639ea1cb9cffe56d43280b977033563eb Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
…cp/templates/python_library/.kokoro (#535) Source-Link: googleapis/synthtool@b4fe62e Post-Processor: gcr.io/cloud-devrel-public-resources/owlbot-python:latest@sha256:3bf87e47c2173d7eed42714589dc4da2c07c3268610f1e47f8e1a30decbfc7f1 Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
Co-authored-by: Mariatta Wijaya <Mariatta@users.noreply.github.com>
* fix: Reenable staleness bot Reenable staleness bot on the repo * Update auto-label.yaml
* fix: Reenable staleness bot Reenable staleness bot on the repo * Update auto-label.yaml
Add transaction management, including utils for handling spanner sessions and connections. Co-authored-by: MF2199 <38331387+mf2199@users.noreply.github.com> Co-authored-by: Chris Kleinknecht <libc@google.com>

Fixes#531.
To "test" that this works, feel free to add a test case like: