У меня есть простая задача luigi, которая при запуске выдаст себя с другим параметром, как показано ниже.
import luigi
class ComputeJob(luigi.Task):
id_parameter = luigi.parameter.IntParameter()
#run defination
def run(self):
print ("\nrunning task {}".format(self.id_parameter))
#Do some work here
if self.id_parameter < 10:
next_val = self.id_parameter + 1
yield ComputeJob(id_parameter = next_val)
Я ожидаю, что он будет запущен 10 раз, а затем выйдет из цикла, но после выполнения 10-й итерации он начнет заново выполнять 9 шагов с самого начала. В связи с этим задачи повторяются в шагах 9 и 10.
поэтому ожидаемый выходной результат должен быть:
running task 1
running task 2
running task 3
running task 4
running task 5
running task 6
running task 7
running task 8
running task 9
running task 10
но вывод, который я получаю:
running task 1
running task 2
running task 3
running task 4
running task 5
running task 6
running task 7
running task 8
running task 9
running task 10
running task 9
running task 10
running task 9
running task 10
...
...
...
Что мне здесь не хватает?
Спасибо, Ойшик