Reputation: 47
7.5 to 1.8 in App Engine SDK and now I can't do upload data. This is the error:
appcfg.py upload_data --url=http://192.168.1.106:8001/ --filename=database --num_threads=4 --rps_limit=500
08:46 PM Uploading data records.
[INFO ] Logging to bulkloader-log-20130528.204655
[INFO ] Throttling transfers:
[INFO ] Bandwidth: 250000 bytes/second
[INFO ] HTTP connections: 8/second
[INFO ] Entities inserted/fetched/modified: 500/second
[INFO ] Batch Size: 10
Error 301: --- begin server output ---
--- end server output ---
When I use: /_ah/remote_api this is the error.
appcfg.py upload_data --url=http://192.168.1.106:8001/_ah/remote_api --filename=database --num_threads=4 --rps_limit=500
08:48 PM Uploading data records.
[INFO ] Logging to bulkloader-log-20130528.204813
[INFO ] Throttling transfers:
[INFO ] Bandwidth: 250000 bytes/second
[INFO ] HTTP connections: 8/second
[INFO ] Entities inserted/fetched/modified: 500/second
[INFO ] Batch Size: 10
Error 404: --- begin server output ---
404 Not Found
The resource could not be found.
--- end server output ---
I've test it with localhost (using the default configuration) and the result is exactly the same. Why 1.8 version is not working when exactly the same is working OK with 1.7.5? Any ideas?
EDIT: I've test with bulkloader too to make the thing easier, this is the result:
1) I've dump the database in my APP in GAE with this command:
bulkloader.py --dump --url=<myapp> --filename=dumpBetaServer
and everything is ok. I have like result a dump called dumpBetaServer.
2) Now, I try to restore this dump to my Development Server:
bulkloader.py --restore --url=http://192.168.1.106:8001 --filename=dumpBetaServer --num_threads=1
And this is the result:
[INFO ] Logging to bulkloader-log-20130529.081227
[INFO ] Throttling transfers:
[INFO ] Bandwidth: 250000 bytes/second
[INFO ] HTTP connections: 8/second
[INFO ] Entities inserted/fetched/modified: 20/second
[INFO ] Batch Size: 10
Traceback (most recent call last):
File "/usr/local/bin/bulkloader.py", line 171, in <module>
run_file(__file__, globals())
File "/usr/local/bin/bulkloader.py", line 167, in run_file
execfile(script_path, globals_)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4401, in <module>
sys.exit(main(sys.argv))
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4397, in main
return _PerformBulkload(arg_dict)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4165, in _PerformBulkload
throttle_class=throttle_class)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4072, in _GetRemoteAppId
rpc_server_factory=throttled_rpc_server_factory, secure=secure)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 659, in GetRemoteAppId
app_id = GetRemoteAppIdFromServer(server, path, rtok)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 568, in GetRemoteAppIdFromServer
response = server.Send(path, payload=None, **urlargs)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appengine_rpc.py", line 393, in Send
f = self.opener.open(req)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 400, in open
response = meth(req, response)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 513, in http_response
'http', request, response, code, msg, hdrs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 438, in error
return self._call_chain(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 372, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 521, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 301: Moved Permanently
When I try with this other command:
bulkloader.py --restore --url=http://192.168.1.106:8001/_ah/remote_api --filename=dumpBetaServer --num_threads=1
This is the result:
[INFO ] Logging to bulkloader-log-20130529.081755
[INFO ] Throttling transfers:
[INFO ] Bandwidth: 250000 bytes/second
[INFO ] HTTP connections: 8/second
[INFO ] Entities inserted/fetched/modified: 20/second
[INFO ] Batch Size: 10
Traceback (most recent call last):
File "/usr/local/bin/bulkloader.py", line 171, in <module>
run_file(__file__, globals())
File "/usr/local/bin/bulkloader.py", line 167, in run_file
execfile(script_path, globals_)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4401, in <module>
sys.exit(main(sys.argv))
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4397, in main
return _PerformBulkload(arg_dict)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4165, in _PerformBulkload
throttle_class=throttle_class)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/bulkloader.py", line 4072, in _GetRemoteAppId
rpc_server_factory=throttled_rpc_server_factory, secure=secure)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 659, in GetRemoteAppId
app_id = GetRemoteAppIdFromServer(server, path, rtok)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py", line 568, in GetRemoteAppIdFromServer
response = server.Send(path, payload=None, **urlargs)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/appengine_rpc.py", line 393, in Send
f = self.opener.open(req)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 400, in open
response = meth(req, response)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 513, in http_response
'http', request, response, code, msg, hdrs)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 438, in error
return self._call_chain(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 372, in _call_chain
result = func(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/urllib2.py", line 521, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
urllib2.HTTPError: HTTP Error 404: Not Found
EDIT 2: This is my app.yaml
# For Google App Engine deployment, copy this file to app.yaml
# and edit as required
# See http://code.google.com/appengine/docs/python/config/appconfig.html
# and http://web2py.com/book/default/chapter/11?search=app.yaml
application: <myapp>
version: 31
api_version: 1
# use this line for Python 2.5
#
runtime: python
# use these lines for Python 2.7
# upload app with: appcfg.py update web2py (where 'web2py' is web2py's root directory)
#
# runtime: python27
# threadsafe: true # true for WSGI & concurrent requests (Python 2.7 only)
default_expiration: "24h" # for static files
handlers:
- url: /(?P<a>.+?)/static/(?P<b>.+)
static_files: applications/\1/static/\2
upload: applications/(.+?)/static/(.+)
secure: always
- url: /favicon.ico
static_files: applications/welcome/static/favicon.ico
upload: applications/welcome/static/favicon.ico
- url: /robots.txt
static_files: applications/welcome/static/robots.txt
upload: applications/welcome/static/robots.txt
- url: .*
script: gaehandler.py # CGI
# script: gaehandler.wsgiapp # WSGI (Python 2.7 only)
secure: optional
admin_console:
pages:
- name: Appstats
url: /_ah/stats
builtins:
- remote_api: on
- appstats: on
- admin_redirect: on
- deferred: on
Thank you for your help!
Upvotes: 1
Views: 991
Reputation: 8199
The new devappserver starts different services at different ports. In the general case it will start three services: your app (default server), admin server (equivalent to the admin console at appengine.google.com) and an API server. The logs will show something like:
INFO 2013-05-31 16:34:58,397 api_server.py:148] Starting API server at:
http://localhost:48392
INFO 2013-05-31 16:34:58,408 dispatcher.py:96] Starting server "default" running at:
http://localhost:8080
INFO 2013-05-31 16:34:58,420 admin_server.py:112] Starting admin server at:
http://localhost:8000
The url you need to pass to the bulkuploader is the one of your app (default server).
Upvotes: 2