]> git.llucax.com Git - z.facultad/75.52/sercom.git/blobdiff - start-sercom.py
Bugfix: InstanciaDeEntrega.observaciones no puede ser None.
[z.facultad/75.52/sercom.git] / start-sercom.py
index 0ec9722ea7354561081132c546136bb0299d5b4e..fd1c7e2f7fc779b89a1de7453881b3697e697913 100644 (file)
@@ -25,7 +25,7 @@ elif exists(join(dirname(__file__), "setup.py")):
 else:
     update_config(configfile="prod.cfg",modulename="sercom.config")
 
 else:
     update_config(configfile="prod.cfg",modulename="sercom.config")
 
-from sercom.model import InstanciaDeEntrega, hub
+from sercom.model import InstanciaDeEntrega, Entrega, AND, hub
 from sercom.finalizer import Finalizer
 from threading import Thread
 from datetime import datetime
 from sercom.finalizer import Finalizer
 from threading import Thread
 from datetime import datetime
@@ -42,8 +42,17 @@ class Queue(object): #{{{
             try:
                 hub.begin()
                 try:
             try:
                 hub.begin()
                 try:
-                    select = InstanciaDeEntrega.selectBy(inicio_proceso=None)
+                    select = InstanciaDeEntrega.select(AND(
+                        InstanciaDeEntrega.q.inicio_proceso == None,
+                        InstanciaDeEntrega.q.fin <= datetime.now()))
                     instancia = select.orderBy(InstanciaDeEntrega.q.fin)[0]
                     instancia = select.orderBy(InstanciaDeEntrega.q.fin)[0]
+                    n = Entrega.selectBy(instancia=instancia, fin=None).count()
+                    if n:
+                        log.debug(_(u'Esperando para procesar instancia (%s), '
+                            'faltan probar %s entregas'), instancia.shortrepr(),
+                            n)
+                        time.sleep(30)
+                        continue
                     instancia.inicio_proceso = datetime.now()
                 finally:
                     hub.commit()
                     instancia.inicio_proceso = datetime.now()
                 finally:
                     hub.commit()
@@ -60,8 +69,8 @@ class Queue(object): #{{{
 #}}}
 
 #q = Queue()
 #}}}
 
 #q = Queue()
-#finalizer = Finalizer(name='juanca', queue=q)
-#t = Thread(name='juanca', target=finalizer.run)
+#finalizer = Finalizer(name='finalizer', queue=q)
+#t = Thread(name='finalizer', target=finalizer.run)
 #t.start()
 
 from sercom.controllers import Root
 #t.start()
 
 from sercom.controllers import Root