Bug P2
Status Update
Comments
od...@google.com <od...@google.com> #2
rg...@gmail.com <rg...@gmail.com> #3
Hi, this error only affects Cloud SDK version 186. It was previously reported in Issue 72407295 and a fix for it should be released in Cloud SDK version 187.
In the mean time, you can downgrade to Cloud SDK version 185 as a workaround by running the following command:
gcloud components update --version 185.0.0
In the mean time, you can downgrade to Cloud SDK version 185 as a workaround by running the following command:
gcloud components update --version 185.0.0
od...@google.com <od...@google.com> #4
Thanks for providing additional information and for reporting this issue in the first place. After further investigations, I can confirm that work on this issue has already begun on a similar thread that can be followed here [1]. Sorry for the confusion and be assured that a minimal working example may no longer be needed. However, If you’ve already made it, feel free to post it on the referenced thread as it will surely help getting additional overview.
Concerning your proposed solution of extracting the “requestId” from "RemoteApiDelegate.makeAsyncCall(...)", have you tried the previously proposed work around of specifying a “module-id” in a similar manner as here [2]? This may in fact be a much simpler way to go around this issue for now.
Lastly, note that such requests are reviewed for possible implementation on a rolling basis, as a result there is no ETA on its implementation.
[1]https://code.google.com/p/googleappengine/issues/detail?id=13331
[2]https://books.google.ca/books?id=xooNCgAAQBAJ&pg=PT192&lpg=PT192&dq=ModulesServiceFactory.getModulesService().getVersionHostname(null,+null)&source=bl&ots=rhPqcYI84N&sig=d84-C47rXiFdQmmDHMgXvK5MVVo&hl=en&sa=X&ved=0ahUKEwiK0aXxhePRAhVY-2MKHVHzDuEQ6AEIMzAF#v=onepage&q=ModulesServiceFactory.getModulesService().getVersionHostname(null%2C%20null)&f=false
Concerning your proposed solution of extracting the “requestId” from "RemoteApiDelegate.makeAsyncCall(...)", have you tried the previously proposed work around of specifying a “module-id” in a similar manner as here [2]? This may in fact be a much simpler way to go around this issue for now.
Lastly, note that such requests are reviewed for possible implementation on a rolling basis, as a result there is no ETA on its implementation.
[1]
[2]
Description
1. Create standard environment Java App Engine application
2. Add a following piece of code: String hostname = ModulesServiceFactory.getModulesService().getVersionHostname(null, null);
3. Run it using devserver from new Google Cloud SDK
What is the expected output? What do you see instead?
hostname variable should contain something like "localhost:12345"
Instead exception is thrown with the following output:
ERROR 2017-01-25 16:20:47,818 api_server.py:335] Exception while handling service_name: "modules"
method: "GetHostname"
request: ""
request_id: "no-request-id"
Traceback (most recent call last):
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/api_server.py", line 310, in _handle_POST
api_response = _execute_request(request).Encode()
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/api_server.py", line 196, in _execute_request
make_request()
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/api_server.py", line 191, in make_request
request_id)
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/api/apiproxy_stub.py", line 129, in MakeSyncCall
method(request, response, request_id)
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules_stub.py", line 133, in _Dynamic_GetHostname
request, request_id)
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules_stub.py", line 44, in _GetModuleAndVersionFromRequest
module, dispatcher = self._GetModuleFromRequest(request, request_id)
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/api/modules/modules_stub.py", line 40, in _GetModuleFromRequest
module = self.request_data.get_module(request_id)
File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/wsgi_request_info.py", line 152, in get_module
return self._request_id_to_module_configuration[request_id].module_name
KeyError: 'no-request-id'
SEVERE:
com.google.appengine.tools.remoteapi.RemoteApiException: response was a python exception:
cexceptions
RuntimeError
p0
(S"KeyError('no-request-id',)"
p1
tp2
Rp3
.
at com.google.appengine.tools.development.devappserver2.RemoteRpc.call(RemoteRpc.java:63)
at com.google.appengine.tools.development.devappserver2.RemoteApiDelegate.makeSyncCall(RemoteApiDelegate.java:45)
at com.google.appengine.tools.development.devappserver2.RemoteApiDelegate$1.call(RemoteApiDelegate.java:56)
at com.google.appengine.tools.development.devappserver2.RemoteApiDelegate$1.call(RemoteApiDelegate.java:52)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
What version of the product are you using? On what operating system?
Google Cloud SDK 140.0.0
App Engine Java libraries 1.9.48
Max OS X 10.11.6
Python 2.7.10
Please provide any additional information below.
It doesn't matter which module hostname I ask for the exception is always thrown.