Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

240
Visualizações
Luigi - %s sin cumplir en tiempo de ejecución

Estoy tratando de aprender de una manera muy sencilla cómo funciona luigi. Como un novato se me ocurrió este código

 import luigi class class1(luigi.Task): def requires(self): return class2() def output(self): return luigi.LocalTarget('class1.txt') def run(self): print 'IN class A' class class2(luigi.Task): def requires(self): return [] def output(self): return luigi.LocalTarget('class2.txt') if __name__ == '__main__': luigi.run()

Ejecutar esto en el símbolo del sistema da un error que dice

 raise RuntimeError('Unfulfilled %s at run time: %s' % (deps, ',', '.join(missing)))

cual es:

 RuntimeError: Unfulfilled dependency at run time: class2__99914b932b
over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Esto sucede porque define una salida para class2 pero nunca la crea.

Vamos a desglosarlo...

al correr

 python file.py class2 --local-scheduler

luigi preguntará:

  • ¿La salida de class2 ya está en el disco? NO
  • verifique las dependencias de la class2 : NINGUNA
  • ejecutar el método de run (por defecto es un pass de método vacío)
  • El método de ejecución no devolvió errores, por lo que el trabajo finaliza correctamente.

Sin embargo, al ejecutar

 python file.py class1 --local-scheduler

Luis hará:

  • ¿La salida de class1 ya está en el disco? NO
  • verifique las dependencias de tareas: SÍ: class2
  • pausa para comprobar el estado de la clase 2
    • es la salida de class2 en el disco? NO
    • ejecutar class2 -> ejecutando -> hecho sin errores
    • es la salida de class2 en el disco? NO -> error de subida

luigi nunca ejecuta una tarea a menos que se cumplan todas sus dependencias anteriores. (es decir, su salida está en el sistema de archivos)

over 4 years ago · Santiago Trujillo Relatório

0

También soy un principiante en luigi. Gracias por señalar este tipo de errores.

Siguiendo, la respuesta anterior logré resolverla agregando a class2

 def run(self): _out = self.output().open('w') _out.write(u"Hello World!\n") _out.close() print('in class B')
over 4 years ago · Santiago Trujillo Relatório

0

Este error viene porque si obtiene la salida que nunca se creará. ex. si la carpeta de salida se crea por marca de tiempo. cambio de marca de tiempo en cada segundo por lo que nunca será el mismo. por lo que el error podría venir.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda