-
Notifications
You must be signed in to change notification settings - Fork 1.5k
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
Land Bigtable v2 #1932
Land Bigtable v2 #1932
Conversation
Pass the 'PROTOC_CMD' and 'GRPC_PLUGIN' values through from make's environment to the scripts used to pick apart GRPC-specific code.
Put them in a separate '_generated_v2' subdir, to ease migration. Attempt to factor generation process for clarity (toward #1482).
It was never actually implemented on the back-end in V1, and has been dropped altogether in V2.
Generate code for Bigtable v2 protobufs
Processes the 'ReadRowsResponse.CellChunk' state machine. Add tests based on JSON acceptance tests: https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/master/bigtable-client-core/src/test/resources/com/google/cloud/bigtable/grpc/scanner/v2/read-rows-acceptance-test.json.
Drop 'Table.rename'.
Indicate their V1 source in their names. Prepratory to converting to V2 equivalents.
…logic Add 'ReadRowsResponseV2' wrapper
…ints Alias Bigtable V1 imports / factories / entry point constants.
Note that {Create,Update,Delete}ColumnFamily messages all collapse to ModifyColumnFamilies.
Update bigtable.column_family to use V2 protos
Assert that the state is 'ROW_IN_PROGRESS', and check that the completed rows match the expected results.
Verify that completed, non-error rows match expected results after an invalid chunk testcase.
…ror-cases Clarify handling of V2 'ReadRowsResponse' error cases
Convert non-instance-admin protos to Bigtable V2
In V2, those operations are on the instance.
Support V2 instance admin
@tseaver, ok sounds like a plan! Thanks! |
Just FTR, I was able to run the $ tox -re system-tests3 --notest
$ .tox/system-tests3/bin/pip install grpcio
$ .tox/system-tests3/bin/python system_tests/run_system_test.py --package=bigtable
D0629 13:53:51.485668817 28141 ev_posix.c:101] Using polling engine: poll
test_read_row (bigtable.TestDataAPI) ... ok
test_read_rows (bigtable.TestDataAPI) ... ok
test_read_with_label_applied (bigtable.TestDataAPI) ... ok
test_create_instance (bigtable.TestInstanceAdminAPI) ... ok
test_list_instances (bigtable.TestInstanceAdminAPI) ... ok
test_reload (bigtable.TestInstanceAdminAPI) ... ok
test_update (bigtable.TestInstanceAdminAPI) ... ok
test_create_column_family (bigtable.TestTableAdminAPI) ... ok
test_create_table (bigtable.TestTableAdminAPI) ... ok
test_delete_column_family (bigtable.TestTableAdminAPI) ... ok
test_list_tables (bigtable.TestTableAdminAPI) ... ok
test_update_column_family (bigtable.TestTableAdminAPI) ... ok
(grpcio shutdown noise elided)
----------------------------------------------------------------------
Ran 12 tests in 29.129s
OK The |
What's the status of this PR? @daspecster, are you reviewing it? |
@mbrukman, I am looking it over. |
|
||
.. code:: python | ||
|
||
intances = client.list_intances() |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
@tswast PTAL |
@jonparrott PTAL - could you review this PR - ideally, we'd like to get it published today as part of Bigtable GA. |
@@ -18,8 +18,8 @@ | |||
|
|||
In the hierarchy of API concepts | |||
|
|||
* a :class:`Client` owns a :class:`.Cluster` | |||
* a :class:`.Cluster` owns a :class:`Table <gcloud.bigtable.table.Table>` | |||
* a :class:`Client` owns a :class:`.Instance` |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Changes LGTM. I tested with this branch on my Hello World samples, and both ran fine. Thanks! |
@dhermes any objections to a merge? |
@tseaver - We've had two pythonistas review. dhermes is away. It's ok to merge. |
@tseaver Can you let us know the PyPi status -- (ie submit and let us know) |
@lesv 0.17.0 is tagged. Travis will push the release when the tag build is finished. |
@tseaver What about docs? |
RTD docs on instances have several misspellings: it says |
Also, RTD Bigtable usage docs talk only about clusters, does not mention instances at all. There's also a possible typo or syntax error on the instance API page, where it says:
|
Thank you, @tseaver!! Much appreciated. |
This is the monster. See #1850 (comment) for the PRs which landed on the
bigtable-v2
branch.