DataBricks:dbutils.notebook.run() 因作业中止而失败,但 运行 笔记本单独工作

DataBricks: dbutils.notebook.run() fails with job aborted but running the notebook individually works

我有一个笔记本,其中 运行 有很多笔记本,顺序如下:

%python
notebook_list = ['Notebook1', 'Notebook2']
    
for notebook in notebook_list:
    print(f"Now on Notebook: {notebook}")
    try:
        dbutils.notebook.run(f'{notebook}', 3600)
    except Exception as e:
        print(e)
        pass

当我 运行 这个笔记本时,我得到作业中止的异常,总计如下:

Exceptions:
(1): Task failed while writing rows,
(2): Failed to execute user defined function (SQLDriverLocal$$$Lambda07/462935920: (string) => string)
(3): No input widget named effective_dating is defined

对于#2 -- 我没有用户定义的函数;我只使用 Spark 函数。

对于 #3 -- 小部件看起来不错,我认为它只是将其称为错误,因为之前的错误。

但是,如果我单独 运行 Notebook1Notebook2(运行 所有按钮),它们 运行 正如预期的那样。

更有趣的是,如果我 运行 上面的循环持续 时间,每个笔记本都会 运行 正常;但是 只有在 我 运行 每个人之后。

我想要一个包含 运行 多个笔记本的笔记本,而不是为 运行 每个单独的笔记本设置一个管道。

我找到了答案,dbutils.notebook.run 不会 运行 其他笔记本中的小部件,从而导致使用这些小部件的单元格出错。