Skip to content

Conversation

@calpeyser
Copy link
Contributor

Since the repo's layout has changed significantly since the last PR, I've opened a new PR. I've attempted to address the comments from the last go-around - please have a look.

@googlebot
Copy link

Thanks for your pull request. It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

📝 Please visit https://cla.developers.google.com/ to sign.

Once you've signed, please reply here (e.g. I signed it!) and we'll verify. Thanks.


  • If you've already signed a CLA, it's possible we don't have your GitHub username or you're using a different email address. Check your existing CLA data and verify that your email is set on your git commits.
  • If you signed the CLA as a corporation, please let us know the company's name.

@googlebot googlebot added the cla: no This human has *not* signed the Contributor License Agreement. label Apr 24, 2017
@googlebot
Copy link

So there's good news and bad news.

👍 The good news is that everyone that needs to sign a CLA (the pull request submitter and all commit authors) have done so. Everything is all good there.

😕 The bad news is that it appears that one or more commits were authored by someone other than the pull request submitter. We need to confirm that they're okay with their commits being contributed to this project. Please have them confirm that here in the pull request.

Note to project maintainer: This is a terminal state, meaning the cla/google commit status will not change from this state. It's up to you to confirm consent of the commit author(s) and merge this pull request when appropriate.

@googlebot
Copy link

CLAs look good, thanks!

@googlebot googlebot added cla: yes This human has signed the Contributor License Agreement. and removed cla: no This human has *not* signed the Contributor License Agreement. labels Apr 26, 2017
@dhermes
Copy link
Contributor

dhermes commented Apr 27, 2017

@calpeyser The cover environment is also failing because several lines do not have tests exercising them / some branches may not have all paths covered:


google/cloud/bigtable/retry.py:    60-61, 78-120, 123, 126, 175, 45->exit, 172->175
google/cloud/bigtable/row_data.py: 279, 277->279

Copy link
Contributor

@garye garye left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like test coverage is the other thing to fix here as @dhermes points out. Looking good so far!

table = instance.table("table")

# Run test, line by line
script = open(TEST_SCRIPT, 'r')

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

Sets the row key at which this iterator will begin reading.
"""
self.start_key = start_key
self.start_key_closed = False

This comment was marked as spam.

This comment was marked as spam.

This comment was marked as spam.

@tseaver tseaver added api: bigtable Issues related to the Bigtable API. in progress labels May 15, 2017
@tseaver
Copy link
Contributor

tseaver commented May 15, 2017

Supersedes #3279.

@tseaver tseaver mentioned this pull request May 15, 2017
@tseaver tseaver added the priority: p2 Moderately-important priority. Fix may not be included in next release. label May 15, 2017
@garye
Copy link
Contributor

garye commented May 16, 2017

Hi @dhermes, can you help take a look at this?

Copy link
Contributor

@lukesneeringer lukesneeringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @calpeyser, thanks for submitting.

I have a few concerns about this as given. The principle of retrying when we know that we can seems fine, but I would ask that you do some cleanup before we accept this.

Thank you very much! :-)

_MILLIS_PER_SECOND = 1000


class ReadRowsIterator():

This comment was marked as spam.

if code not in self.retry_options.retry_codes:
six.reraise(type(error), error)

# pylint: disable=redefined-variable-type

This comment was marked as spam.

This comment was marked as spam.

deadline - now)
self.set_stream()

six.reraise(errors.RetryError, exc)

This comment was marked as spam.


self._validate_chunk(chunk)

if ("ReadRowsIterator" in

This comment was marked as spam.


test_platform = platform.system()
if (test_platform not in MOCK_SERVER_URLS):
self.fail("Retry server not available for platform " + test_platform)

This comment was marked as spam.

table = instance.table("table")

# Run test, line by line
script = open(TEST_SCRIPT, 'r')

This comment was marked as spam.

if line.startswith("CLIENT:"):
chunks = line.split(" ")
op = chunks[1]
if (op != "SCAN"):

This comment was marked as spam.

process_scan(table, chunks[2], chunks[3])

# Clean up
server.kill()

This comment was marked as spam.

This comment was marked as spam.

if (op != "SCAN"):
self.fail("Script contained " + op + " operation. Only \'SCAN\' is supported.")
else:
process_scan(table, chunks[2], chunks[3])

This comment was marked as spam.

return StatusCode.DEADLINE_EXCEEDED

def _wait_then_raise():
time.sleep(0.5)

This comment was marked as spam.

This comment was marked as spam.

@calpeyser
Copy link
Contributor Author

@lukesneeringer @garye - I've attempted to address the comments above. Thanks for bearing with me!

@mbrukman
Copy link
Contributor

@calpeyser -- looks like you have some conflicts with the base branch, please resolve them.

@lukesneeringer, @garye -- please take a look at the PR, it would be great to merge this functionality soon.

Thanks everyone!

@garye
Copy link
Contributor

garye commented Jul 14, 2017

LGTM from a bigtable perspective

@calpeyser
Copy link
Contributor Author

Conflict resolved, tests are passing. @lukesneeringer, what do you think?

@lukesneeringer
Copy link
Contributor

Reading now

Copy link
Contributor

@lukesneeringer lukesneeringer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems fine to me at this point.

@calpeyser
Copy link
Contributor Author

@lukesneeringer - can you merge it? Neither I nor @garye have write permissions.

@lukesneeringer lukesneeringer merged commit 67f4ba4 into googleapis:master Jul 17, 2017
@lukesneeringer
Copy link
Contributor

🎉

@mbrukman
Copy link
Contributor

Thank you @calpeyser for your work on this and thanks to @garye and @lukesneeringer for the reviews!

@dhermes
Copy link
Contributor

dhermes commented Jul 20, 2017

This caused a system test breakage, I'm very tempted to roll it back and iterate in a PR / branch until the system tests are passing

theacodes pushed a commit that referenced this pull request Jul 20, 2017
theacodes pushed a commit that referenced this pull request Jul 20, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 21, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 21, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 22, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 22, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 22, 2017
landrito pushed a commit to landrito/google-cloud-python that referenced this pull request Aug 22, 2017
parthea pushed a commit that referenced this pull request Nov 22, 2025
parthea pushed a commit that referenced this pull request Nov 22, 2025
This reverts commit 0213b69cdf0177d9158d7608633b4d9c66930e03.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: bigtable Issues related to the Bigtable API. cla: yes This human has signed the Contributor License Agreement. priority: p2 Moderately-important priority. Fix may not be included in next release.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants