question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

When I use grpc for datastore_api to get entities in GAE flex, there is no response.

See original GitHub issue

Yesterday, I update my project’s environment from vm: true to env: flex and datastore api version from 0.22.* to 1.0.0. In local test, there is no problem and I can fetch entities with datastore_api=make_datastore_api(self)(google-cloud-python/datastore/google/cloud/datastore/client.py) However, in GAE flex, when I use grpc for datastore_api to get entities in GAE flex, there is no response. I can get entities in GAE flex when I use HTTPDatastoreAPI as datastore_api. How can I use grpc for datastore_api in GAE flex?

  1. OS type and version Local: Ubuntu 16.04 Cloud: Google App Engine Flexible Environment
  2. Python version and virtual environment information python --version Python 3.5.3
  3. google-cloud-python version pip show google-cloud, pip show google-<service> or pip freeze
cachetools==2.0.0
certifi==2017.4.17
chardet==3.0.3
click==6.7
colorama==0.3.9
defusedxml==0.5.0
dill==0.2.6
Django==1.10
django-allauth==0.27.0
django-bmemcached==0.2.3
django-bootstrap3==7.1.0
django-password-validation==0.1.1
django-recaptcha==1.3.0
docopt==0.6.2
enum34==1.1.6
feedparser==5.2.1
future==0.16.0
gapic-google-cloud-datastore-v1==0.15.3
gapic-google-cloud-error-reporting-v1beta1==0.15.3
gapic-google-cloud-logging-v2==0.91.3
gapic-google-cloud-pubsub-v1==0.15.4
gapic-google-cloud-spanner-admin-database-v1==0.15.3
gapic-google-cloud-spanner-admin-instance-v1==0.15.3
gapic-google-cloud-spanner-v1==0.15.3
gapic-google-cloud-speech-v1beta1==0.15.3
gapic-google-cloud-vision-v1==0.90.3
geoip2==2.5.0
gevent==1.2.2
gitsome==0.7.2
google-auth==1.0.1
google-auth-httplib2==0.0.2
google-cloud==0.25.0
google-cloud-bigquery==0.24.0
google-cloud-bigtable==0.24.0
google-cloud-core==0.24.1
google-cloud-datastore==1.0.0
google-cloud-dns==0.24.0
google-cloud-error-reporting==0.24.2
google-cloud-happybase==0.24.0
google-cloud-language==0.24.1
google-cloud-logging==1.0.0
google-cloud-monitoring==0.24.0
google-cloud-pubsub==0.25.0
google-cloud-resource-manager==0.24.0
google-cloud-runtimeconfig==0.24.0
google-cloud-spanner==0.24.2
google-cloud-speech==0.24.0
google-cloud-storage==1.1.1
google-cloud-translate==0.24.0
google-cloud-vision==0.24.0
google-gax==0.15.13
google-resumable-media==0.0.2
googleapis-common-protos==1.5.2
greenlet==0.4.12
grpc-google-cloud-datastore-v1==0.14.0
grpc-google-iam-v1==0.11.1
grpcio==1.3.5
gunicorn==19.7.1
html5lib==1.0b8
httplib2==0.10.3
idna==2.5
iso8601==0.1.11
Markdown==2.6.6
maxminddb==1.3.0
mysqlclient==1.3.7
numpy==1.13.0
numpydoc==0.6.0
oauth2client==3.0.0
oauthlib==2.0.2
ply==3.8
prompt-toolkit==1.0.14
proto-google-cloud-datastore-v1==0.90.4
proto-google-cloud-error-reporting-v1beta1==0.15.3
proto-google-cloud-logging-v2==0.91.3
proto-google-cloud-pubsub-v1==0.15.4
proto-google-cloud-spanner-admin-database-v1==0.15.3
proto-google-cloud-spanner-admin-instance-v1==0.15.3
proto-google-cloud-spanner-v1==0.15.3
proto-google-cloud-speech-v1beta1==0.15.3
proto-google-cloud-vision-v1==0.90.3
protobuf==3.3.0
pyasn1==0.2.3
pyasn1-modules==0.0.9
pycrypto==2.6.1
Pygments==2.2.0
pylibmc==1.5.2
python-binary-memcached==0.26.0
python3-openid==3.1.0
pytz==2017.2
requests==2.17.3
requests-oauthlib==0.8.0
rsa==3.4.2
six==1.10.0
tweepy==3.5.0
ua-parser==0.7.3
uritemplate==3.0.0
uritemplate.py==3.0.2
urllib3==1.21.1
user-agents==1.1.0
wcwidth==0.1.7
  1. Stacktrace if available No error occur.
  2. Steps to reproduce I don’t know whether this is reproducable.
  3. Code example
from google.cloud import datastore
c = datastore.Client()
c.get(c.key('kind', 'name')) # freeze here in GAE flex.

Issue Analytics

  • State:closed
  • Created 6 years ago
  • Comments:17 (6 by maintainers)

github_iconTop GitHub Comments

4reactions
sengoontohcommented, Sep 8, 2018

Has anyone tried this solution? It worked for me

https://github.com/grpc/grpc/issues/4629

from gevent import monkey monkey.patch_all()

import grpc.experimental.gevent as grpc_gevent grpc_gevent.init_gevent()

1reaction
zero-mastercommented, Nov 19, 2017

@dhermes Here you go https://github.com/zero-master/grcp-issue

On, step 4 you’ll see that it blocks forever but if you use sync worker class by commenting the last line, it will work as expected.

http://docs.gunicorn.org/en/stable/design.html

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to fix AttributeError in App Engine Flex when using grpc ...
I've noticed that google-api-core is also a dependency and it was recently updated (specifically around the grpc_helpers_async), ...
Read more >
Troubleshooting Response Errors | Cloud Endpoints with gRPC
This page describes how to troubleshoot errors that you receive in a response from a request to your API. Upstream backend unavailable. If...
Read more >
Why isn't grpc supported on GAE standard? - Google Groups
Several sources state that grpc isn't supported on AppEngine Standard. Somebody has already asked when it will be supported, with no (precise) answer....
Read more >
cmaan / google-cloud-java Download - JitPack
When using google-cloud libraries from within Compute/App Engine, there's no need to specify a project ID. It is automatically inferred from the production ......
Read more >
I'm the tech lead and primary software engineer on the Go ...
Cloud Build has not been used in project <project> before or it is disabled. ... nested structs as entity values, while the appengine...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found