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 bigtable::Table::ReadModifyWriteRow #207
Comments
A few observations: we may want to create two separate member functions for this: class Table { public:
Row IncrementValue(std::string row_key, std::string family_name, std::string column, std::int64_t value);
Row AppendValue(std::string row_key, std::string family_name, std::string column, std::string value); The disadvantage is, of course, that if we ever created a new branch in class Table { public:
Row ReadModifyWrite(std::string row_key, ReadModifyWriteRule rule);
}; is workable, but a bit more awkward, contrast: table->AppendValue("foo", "fam", "col", ";more-stuff-at-the-end"); vs. table->ReadModifyWrite("foo", bigtable::AppendValue("fam", "col", ";more-stuff-at-the-end"); |
@hemant-qlogic Anything to report? Will you able to merge a PR before 2018-03-31? Remember to leave some days for review and fixes in your estimate. |
Nothing till now, Will able to merge it till sunday |
My Initial understanding about the point.
|
That sounds reasonable, can you describe the prototype for this
It is possible I am missing something here. To me, it looks like
If we write the class then we certainly need unit tests for it.
Yes, we will need that.
That is correct, the gRPC API is defined here: and it takes a single row.
Unfortunately not, I had not noticed this, but multiple rules apply to each request: |
Done. |
This might require implementing wrappers for
ReadModifyWriteRule
in the same style as thebigtable::Filter::*
wrappers.This issue should only be closed once the unit and integration tests are written as well as the implementation itself. If it is easier, break down the work in smaller issues before starting.
google.bigtable.v2.ReadModifyWriteRule
.bigtable::ReadModifyWriteRule::AppendValue()
.bigtable::ReadModifyWriteRule::IncrementAmount()
constructor function and the corresponding unit test.bigtable::Table::ReadModifyWrite()
member function and a simple unit test usingAppendValue()
.bigtable::Table::ReadModifyWrite()
.AppendValue()
rule.The text was updated successfully, but these errors were encountered: