2010-06-26 7 views
7

Acabo de enterarme de que las tareas transaccionales no pueden nombrarse. ¿Porqué es eso? Es como si nombrar una tarea fuera una acción en un grupo de entidades diferente, pero las tareas "sin nombre" en realidad reciben nombres generados por la API.¿Por qué las tareas en cola durante las transacciones no pueden tener nombres?

+0

¿Y de dónde lo sabes? ¿Puedes proporcionar un enlace? – Manjoor

+1

manjoor: http://code.google.com/appengine/docs/python/taskqueue/overview.html#Task_Within_Transactions "Las tareas transaccionales no deben tener nombres especificados por el usuario". –

Respuesta

9

Los nombres de las tareas son únicos, por lo que si agrega una tarea llamada "foo", las siguientes adiciones de tareas llamadas "foo" fallarán. Esta comprobación de exclusividad debe realizarse dentro de una transacción, por lo que todas las tareas nombradas en una aplicación deberían tener el mismo grupo de entidades.

Si intenta encaar atómicamente tareas dentro de una transacción, entonces las tareas deberán tener el mismo grupo de entidades que las otras entidades en la transacción y la verificación de unicidad no sería confiable.

Cuestiones relacionadas