Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement support for MutateRows and use it in HappyBase send() #1546

Closed
dhermes opened this issue Feb 26, 2016 · 3 comments
Closed

Implement support for MutateRows and use it in HappyBase send() #1546

dhermes opened this issue Feb 26, 2016 · 3 comments
Assignees
Labels
api: bigtable Issues related to the Bigtable API. priority: p2 Moderately-important priority. Fix may not be included in next release.

Comments

@dhermes
Copy link
Contributor

dhermes commented Feb 26, 2016

No description provided.

@tseaver
Copy link
Contributor

tseaver commented Jul 1, 2016

Suppose we add a method to Table which returns a context-manager for accumulating the various row mutations. Noodling:

with table.batch() as batch:
    new_row = batch.row(new_key)
    new_row.set_cell(family_1, qualifier_2, 0)
    ...
    old_row = batch.row(old_key_1)
    old_row.delete()
    maybe_row = batch.row(maybe_key, filter_=maybe_filter)
    maybe_row.set_cell(family_2, qualifier_3, 1234, state=True) 
    maybe_row.set_cell(family_2, qualifier_3, 2345, state=False) 

The Batch object would keep track of the rows it returned from its underlying table. In its __exit__(), assuming no exception was raised, it would emulate committing all the rows, gathering their mutations into a single MutateRowsRequest and submitting it.

@dhermes
Copy link
Contributor Author

dhermes commented Jul 2, 2016

There is already batch support in happybase so it could be easier to just have the Table method take a primitive list and do the "building up" in the happybase classes.

@lukesneeringer
Copy link
Contributor

Hello,
One of the challenges of maintaining a large open source project is that sometimes, you can bite off more than you can chew. As the lead maintainer of google-cloud-python, I can definitely say that I have let the issues here pile up.

As part of trying to get things under control (as well as to empower us to provide better customer service in the future), I am declaring a "bankruptcy" of sorts on many of the old issues, especially those likely to have been addressed or made obsolete by more recent updates.

My goal is to close stale issues whose relevance or solution is no longer immediately evident, and which appear to be of lower importance. I believe in good faith that this is one of those issues, but I am scanning quickly and may occasionally be wrong. If this is an issue of high importance, please comment here and we will reconsider. If this is an issue whose solution is trivial, please consider providing a pull request.

Thank you!

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. priority: p2 Moderately-important priority. Fix may not be included in next release.
Projects
None yet
Development

No branches or pull requests

3 participants