Ah, Thanks Robert. This is fixed with the next release of the SDK. Until it is released you can use Robert's patch or the production environment.
On 17 May 2011 09:03, Robert Kluin <[email protected]> wrote: > Hi Uri, > It looks like the remote_api doesn't support lease_tasks. You > should be able to enable leasing and deleting tasks by adding the > following lines to the taskqueue service list: > > 'QueryAndOwnTasks': > (taskqueue_service_pb.TaskQueueQueryAndOwnTasksRequest, > > taskqueue_service_pb.TaskQueueQueryAndOwnTasksResponse), > 'Delete': (taskqueue_service_pb.TaskQueueDeleteRequest, > taskqueue_service_pb.TaskQueueDeleteResponse), > > Just put those after 'FetchQueueStats' (should be around line 110) in: > google_appengine/google/appengine/ext/remote_api/remote_api_services.py > > Attached is a patch file. This worked in my local testing at least. :) > > > Robert > > > > > > > On Tue, May 17, 2011 at 07:09, uri twig <[email protected]> wrote: >> Thanks Greg >> >> That works OK. >> >> I have another problem: i have two back ends 1 'tester' inserts tasks >> to a queue with 'PULL' method. >> and another 'worker' that leases the tasks and process them. the >> 'tester' backend works fine. >> the 'worker' I get an exception at lease_tasks function >> >> the stack is as follows: >> >> [Remote API Server] [handler.py:308] ERROR Exception while handling >> service_name: "taskqueue" >> method: "QueryAndOwnTasks" >> request: "\n\011workitems\021\000\000\000\000\000 \254@\030d" >> Traceback (most recent call last): >> File "C:\Program Files\Google\google_appengine\google\appengine\ext >> \remote_api\handler.py", line 304, in post >> response_data = self.ExecuteRequest(request) >> File "C:\Program Files\Google\google_appengine\google\appengine\ext >> \remote_api\handler.py", line 324, in ExecuteRequest >> raise apiproxy_errors.CallNotFoundError() >> CallNotFoundError >> [Backend Instance] [worker.0] [utilities.py:143] ERROR ***worker*** >> CallNotFoundError >> >> Traceback (most recent call last): >> File "D:\vodio\trunk\Software\Samples\backends\test-backends >> \worker.py", line 48, in main >> tasks = q.lease_tasks(3600, 100) >> File "C:\Program Files\Google\google_appengine\google\appengine\api >> \taskqueue\taskqueue.py", line 1041, in lease_tasks >> response) >> File "C:\Program Files\Google\google_appengine\google\appengine\api >> \apiproxy_stub_map.py", line 94, in MakeSyncCall >> return stubmap.MakeSyncCall(service, call, request, response) >> File "C:\Program Files\Google\google_appengine\google\appengine\api >> \apiproxy_stub_map.py", line 308, in MakeSyncCall >> rpc.CheckSuccess() >> File "C:\Program Files\Google\google_appengine\google\appengine\api >> \apiproxy_rpc.py", line 156, in _WaitImpl >> self.request, self.response) >> File "C:\Program Files\Google\google_appengine\google\appengine\ext >> \remote_api\remote_api_stub.py", line 177, in MakeSyncCall >> self._MakeRealSyncCall(service, call, request, response) >> File "C:\Program Files\Google\google_appengine\google\appengine\ext >> \remote_api\remote_api_stub.py", line 197, in _MakeRealSyncCall >> raise pickle.loads(response_pb.exception()) >> CallNotFoundError >> >> >> >> On May 17, 12:44 am, "Greg Darke (Google)" <[email protected]> >> wrote: >>> In the dev-appserver you need to pass the '--backends' parameter. >>> >>> On 15 May 2011 11:07, uri twig <[email protected]> wrote: >>> >>> >>> >>> >>> >>> >>> >>> > Hi I'm tring to work with the new backends api, I downloaded the >>> > sample code formhttp://backends-io.appspot.com/ >>> >>> > and I run it on a few machines with the new appengine 1.5 sdk >>> >>> > this is what I get whenhttp://localhost:8080/welcome >>> >>> > What am I'm doing wrong ?!? >>> >>> > Traceback (most recent call last): >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 4053, in _HandleRequest >>> > self._Dispatch(dispatcher, self.rfile, outfile, env_dict) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 3977, in _Dispatch >>> > base_env_dict=env_dict) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 588, in Dispatch >>> > base_env_dict=base_env_dict) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 3050, in Dispatch >>> > self._module_dict) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 2954, in ExecuteCGI >>> > reset_modules = exec_script(handler_path, cgi_path, hook) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\tools >>> > \dev_appserver.py", line 2834, in ExecuteOrImportScript >>> > exec module_code in script_module.__dict__ >>> > File "D:\test\counter_demo\demo_frontend.py", line 22, in <module> >>> > backends.get_url('counter')) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\api >>> > \backends\backends.py", line 101, in get_url >>> > return _get_dev_url(backend, instance) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\api >>> > \backends\backends.py", line 171, in _get_dev_url >>> > return 'http://%s' % _get_dev_hostname(backend, instance) >>> > File "C:\Program Files\Google\google_appengine\google\appengine\api >>> > \backends\backends.py", line 190, in _get_dev_hostname >>> > raise InvalidBackendError(error) >>> > InvalidBackendError: Backend not found: counter >>> >>> > -- >>> > You received this message because you are subscribed to the Google Groups >>> > "Google App Engine" group. >>> > To post to this group, send email to [email protected]. >>> > To unsubscribe from this group, send email to >>> > [email protected]. >>> > For more options, visit this group >>> > athttp://groups.google.com/group/google-appengine?hl=en. >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Google App Engine" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/google-appengine?hl=en. >> >> > > -- > You received this message because you are subscribed to the Google Groups > "Google App Engine" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/google-appengine?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en.
