Hey Adam, Thanks again.

My ConfigureRemoteApiForOAuth code now on appengine_config looks like:

if os.environ['SERVER_SOFTWARE'].startswith('Development'):
    from google.appengine.ext.remote_api import remote_api_stub
    from google.appengine.api import apiproxy_stub_map
    import dev_appserver
    dev_appserver.fix_sys_path()
    local_stub = apiproxy_stub_map.apiproxy.GetStub('urlfetch')
    remote_api_stub.ConfigureRemoteApiForOAuth('storemavendev2.appspot.com', 
'/_ah/remote_api')
    apiproxy_stub_map.apiproxy.ReplaceStub('urlfetch', local_stub)



And this split for three scenarios.
First - when secure flag is True in ConfigureRemoteApiForOAuth (by default) 
I get that:
  File "D:\google_appengine\google\appengine\runtime\wsgi.py", line 240, in 
Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "D:\google_appengine\google\appengine\api\lib_config.py", line 354, 
in __getattr__
    self._update_configs()
  File "D:\google_appengine\google\appengine\api\lib_config.py", line 290, 
in _update_configs
    self._registry.initialize()
  File "D:\google_appengine\google\appengine\api\lib_config.py", line 165, 
in initialize
    import_func(self._modname)
  File "D:\storemaven\code\appengine_config.py", line 12, in <module>
    remote_api_stub.ConfigureRemoteApiForOAuth('mockappstore.appspot.com', 
'/_ah/remote_api', True)
  File 
"D:\google_appengine\google\appengine\ext\remote_api\remote_api_stub.py", 
line 769, in ConfigureRemoteApiForOAuth
    rpc_server_factory=rpc_server_factory)
  File 
"D:\google_appengine\google\appengine\ext\remote_api\remote_api_stub.py", 
line 839, in ConfigureRemoteApi
    app_id = GetRemoteAppIdFromServer(server, path, rtok)
  File 
"D:\google_appengine\google\appengine\ext\remote_api\remote_api_stub.py", 
line 569, in GetRemoteAppIdFromServer
    response = server.Send(path, payload=None, **urlargs)
  File 
"D:\google_appengine\google\appengine\tools\appengine_rpc_httplib2.py", 
line 246, in Send
    url, method=method, body=payload, headers=headers)
  File "D:\google_appengine\lib\oauth2client\oauth2client\client.py", line 
569, in new_request
    redirections, connection_type)
  File "D:\google_appengine\lib\httplib2\httplib2\__init__.py", line 1464, 
in request
    self.disable_ssl_certificate_validation)
  File "D:\google_appengine\lib\httplib2\httplib2\__init__.py", line 1143, 
in __init__
    strict, timeout, proxy_info, ca_certs, 
disable_ssl_certificate_validation)
  File "D:\google_appengine\lib\httplib2\httplib2\__init__.py", line 1092, 
in __init__
    raise NotSupportedOnThisPlatform()
NotSupportedOnThisPlatform

Second - when I'm turning off secrure by passing secure=False I get 
information from some other namespace, how can I pass from which namespace 
I wanat to work with my data?

Third - whem I'm turning off secure and try to reach to my other project 
(id: storemavendev2) I get that(In other projects it works just not on the 
wanted namespace):
Traceback (most recent call last):
  File "D:\google_appengine\google\appengine\runtime\wsgi.py", line 267, in 
Handle
    result = handler(dict(self._environ), self._StartResponse)
  File "D:\storemaven\code\com\lib\gaesessions\__init__.py", line 475, in 
__call__
    return self.app(environ, my_start_response)
  File "D:\storemaven\code/com/lib\flask\app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "D:\storemaven\code/com/lib\flask\app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "D:\storemaven\code/com/lib\flask\app.py", line 1403, in 
handle_exception
    reraise(exc_type, exc_value, tb)
  File "D:\storemaven\code/com/lib\flask\app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "D:\storemaven\code/com/lib\flask\app.py", line 1477, in 
full_dispatch_request
    rv = self.handle_user_exception(e)
  File "D:\storemaven\code/com/lib\flask\app.py", line 1381, in 
handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "D:\storemaven\code/com/lib\flask\app.py", line 1475, in 
full_dispatch_request
    rv = self.dispatch_request()
  File "D:\storemaven\code/com/lib\flask\app.py", line 1461, in 
dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "D:\storemaven\code\com\scene53\api\flask\headers.py", line 20, in 
decorated_function
    resp = make_response(f(*args, **kwargs))
  File "D:\storemaven\code\com\scene53\api\flask\headers.py", line 62, in 
decorated_function
    return f(*args, **kwargs)
  File "D:\storemaven\code\com\scene53\api\flask\console\__init__.py", line 
551, in listUnassignedUsers
    return json.jsonify(status="OK", text="", 
payload=userFacade.listUnassignedUsers())
  File "D:\storemaven\code\com\scene53\data\userfacade.py", line 175, in 
listUnassignedUsers
    users=self.userService.listUsers(None)
  File "D:\storemaven\code\com\scene53\data\user.py", line 180, in listUsers
    for p in iter:
  File "D:\google_appengine\google\appengine\ext\db\__init__.py", line 
2330, in next
    return self.__model_class.from_entity(self.__iterator.next())
  File "D:\google_appengine\google\appengine\datastore\datastore_query.py", 
line 3321, in next
    next_batch = self.__batcher.next_batch(Batcher.AT_LEAST_OFFSET)
  File "D:\google_appengine\google\appengine\datastore\datastore_query.py", 
line 3207, in next_batch
    batch = self.__next_batch.get_result()
  File "D:\google_appengine\google\appengine\api\apiproxy_stub_map.py", 
line 613, in get_result
    return self.__get_result_hook(self)
  File "D:\google_appengine\google\appengine\datastore\datastore_query.py", 
line 2906, in __query_result_hook
    self._batch_shared.conn.check_rpc_success(rpc)
  File "D:\google_appengine\google\appengine\datastore\datastore_rpc.py", 
line 1373, in check_rpc_success
    raise _ToDatastoreError(err)
BadRequestError: app s~storemavendev2 cannot access app 
dev~storemavendev2's data

I guess that happens because of that my local app named this way?

Thanks!
Thank you very very much! 
On Tuesday, May 3, 2016 at 6:20:33 PM UTC+3, Rotem Vilkovski wrote:
>
> Hey, 
>
> I'm trying to upload data to local Datastore using the file I've 
> downloaded from out production using appcfg download_data. 
> I get an error almost every time about ProtocolBufferDecodeError: 
> corrupted. Sometimes (on the same file) it is just working. This is really 
> disturbing and I'd like to know if there's another way to use my local 
> datastore with my local file and having a solution for this problem please. 
> Everytime I update an entity in production and want to update my local 
> Datastore it takes me for 10-20 tries.
>
> Stack trace:
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/tools/adaptive_thread_pool.py",
>  
> line 172, in WorkOnItems
>     status, instruction = item.PerformWork(self.__thread_pool)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/tools/bulkloader.py", 
> line 750, in PerformWork
>     transfer_time = self._TransferItem(thread_pool)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/tools/bulkloader.py", 
> line 921, in _TransferItem
>     self.request_manager.PostEntities(self.content)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/tools/bulkloader.py", 
> line 1396, in PostEntities
>     datastore.Put(entities)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/api/datastore.py", 
> line 606, in Put
>     return PutAsync(entities, **kwargs).get_result()
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/datastore/datastore_rpc.py",
>  
> line 923, in get_result
>     results = self.__rpcs[0].get_result()
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/api/apiproxy_stub_map.py",
>  
> line 613, in get_result
>     return self.__get_result_hook(self)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/datastore/datastore_rpc.py",
>  
> line 1881, in __put_hook
>     self.check_rpc_success(rpc)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/datastore/datastore_rpc.py",
>  
> line 1371, in check_rpc_success
>     rpc.check_success()
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/api/apiproxy_stub_map.py",
>  
> line 579, in check_success
>     self.__rpc.CheckSuccess()
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/api/apiproxy_rpc.py", 
> line 157, in _WaitImpl
>     self.request, self.response)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
>  
> line 286, in MakeSyncCall
>     handler(request, response)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
>  
> line 460, in _Dynamic_Put
>     'datastore_v3', 'Put', put_request, put_response)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
>  
> line 201, in MakeSyncCall
>     self._MakeRealSyncCall(service, call, request, response)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/ext/remote_api/remote_api_stub.py",
>  
> line 228, in _MakeRealSyncCall
>     response_pb.ParseFromString(encoded_response)
>   File 
> "/home/rotem/Desktop/google_appengine/google/net/proto/ProtocolBuffer.py", 
> line 140, in ParseFromString
>     self.MergeFromString(s)
>   File 
> "/home/rotem/Desktop/google_appengine/google/net/proto/ProtocolBuffer.py", 
> line 152, in MergeFromString
>     self.MergePartialFromString(s)
>   File 
> "/home/rotem/Desktop/google_appengine/google/net/proto/ProtocolBuffer.py", 
> line 168, in MergePartialFromString
>     self.TryMerge(d)
>   File 
> "/home/rotem/Desktop/google_appengine/google/appengine/ext/remote_api/remote_api_pb.py",
>  
> line 770, in TryMerge
>     d.skipData(tt)
>   File 
> "/home/rotem/Desktop/google_appengine/google/net/proto/ProtocolBuffer.py", 
> line 673, in skipData
>     raise ProtocolBufferDecodeError, "corrupted"
> ProtocolBufferDecodeError: corrupted
>
>
> Thanks!
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/b572868d-ea22-485f-bbcb-bfa76607610b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to