title: appcfg.py upload_data fails in Google App Engine SDK 1.8.2
body: <p>I'm working with Google App Engine SDK version 1.8.2 on a Mac OS X 10.6.8 system. The application itself is written in Python 2.7, although I don't think that's relevant to the problem. When I attempt to bulkload the datastore in the development environment, it fails. The command I'm using is:</p>
  
  <pre><code>appcfg.py upload_data --config_file=bulkloader.yaml --kind=Capitulary --url=http://localhost:8080/_ah/remote_api --filename=upload.xml
  </code></pre>
  
  <p>This command worked with every version of the SDK going back to 2010. It broke when SDK version 1.8.0 came out, it worked again when 1.8.1 came out, and broke again when 1.8.2 came out. </p>
  
  <p>Thanks in advance for your help.</p>
  
  <p>Error message below:</p>
  
  <blockquote>
    <p>INFO     2013-08-05 14:19:05,312 module.py:595] default: "GET
    /_ah/remote_api?rtok=215098893971 HTTP/1.1" 200 70 INFO     2013-08-05
    14:19:05,569 module.py:595] default: "GET /_ah/remote_api HTTP/1.1"
    200 42 ERROR    2013-08-05 14:19:05,716 handler.py:384] Exception
    while handling service_name: "datastore_v4" method: "AllocateIds"
    request: "" Traceback (most recent call last):   File
    "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/handler.py",
    line 380, in post
        response_data = self.ExecuteRequest(request)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/handler.py",
    line 411, in ExecuteRequest
        response_data)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_stub_map.py",
    line 94, in MakeSyncCall
        return stubmap.MakeSyncCall(service, call, request, response)   File
    "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_stub_map.py",
    line 328, in MakeSyncCall
        rpc.CheckSuccess()   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_rpc.py",
    line 156, in _WaitImpl
        self.request, self.response)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
    line 200, in MakeSyncCall
        self._MakeRealSyncCall(service, call, request, response)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
    line 234, in _MakeRealSyncCall
        raise pickle.loads(response_pb.exception()) AttributeError: 'NoneType' object has no attribute 'THREADSAFE' INFO     2013-08-05
    14:19:05,773 module.py:595] default: "POST /_ah/remote_api HTTP/1.1"
    200 96 ERROR    2013-08-05 14:19:05,793 handler.py:384] Exception
    while handling service_name: "datastore_v4" method: "AllocateIds"
    request: "" Traceback (most recent call last):   File
    "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/handler.py",
    line 380, in post
        response_data = self.ExecuteRequest(request)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/handler.py",
    line 411, in ExecuteRequest
        response_data)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_stub_map.py",
    line 94, in MakeSyncCall
        return stubmap.MakeSyncCall(service, call, request, response)   File
    "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_stub_map.py",
    line 328, in MakeSyncCall
        rpc.CheckSuccess()   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/api/apiproxy_rpc.py",
    line 156, in _WaitImpl
        self.request, self.response)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
    line 200, in MakeSyncCall
        self._MakeRealSyncCall(service, call, request, response)   File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
    line 234, in _MakeRealSyncCall
        raise pickle.loads(response_pb.exception()) AttributeError: 'NoneType' object has no attribute 'THREADSAFE' INFO     2013-08-05
    14:19:05,802 module.py:595] default: "POST /_ah/remote_api HTTP/1.1"
    200 96</p>
  </blockquote>