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

fix: optimized protobuf access for performance #155

Merged
merged 4 commits into from
Apr 20, 2021

Conversation

craiglabenz
Copy link
Contributor

@craiglabenz craiglabenz commented Apr 16, 2021

More efficiently uses proto-plus wrappers, as well as inner protobuf attribute access, to greatly reduce the performance costs seen in version 2.0.0 (which stemmed from the introduction of proto-plus).

The size of the performance improvement scales with the number of attributes on each Entity, but in general, speeds once again closely approximate those from 1.15.

Fixes #145
Fixes #150

@craiglabenz craiglabenz requested review from crwilcox and a team April 16, 2021 16:29
@product-auto-label product-auto-label bot added the api: datastore Issues related to the googleapis/python-datastore API. label Apr 16, 2021
@google-cla google-cla bot added the cla: yes This human has signed the Contributor License Agreement. label Apr 16, 2021
@craiglabenz craiglabenz requested a review from tseaver April 19, 2021 21:27
@craiglabenz
Copy link
Contributor Author

There are a few other untested code blocks, but I can't see the CI results for past PRs to confirm whether they were pre-existing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: datastore Issues related to the googleapis/python-datastore API. cla: yes This human has signed the Contributor License Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Too slow query fetch Batches in >=2.0.0 are significantly slower
2 participants