2

我在 NiFi Registry 0.3 中使用 GitFlowPersistenceProvider。今天我创建了另一个 NiFi 注册表,我想使用相同的提供程序加载前一个的所有流。不幸的是,什么都没有发生 - 没有重新创建任何存储桶或流。我尝试手动创建所有存储桶,但即便如此,也没有导入任何流。

GitFlowPersistenceProvider 文档指出:

当 NiFi Registry 启动时,此提供程序会读取 Git 提交历史记录并查找这些 bucket.yml 文件以恢复每个快照版本的存储桶和流。

我应该怎么做才能使用 GitFlowPersistenceProvider 将现有流加载到新的 NiFi 注册表中?

4

2 回答 2

4

不幸的是,该文档并不完全准确。目前有一个默认为嵌入式 H2 的元数据数据库,但也可以是 Postgres,然后是流存储。您需要同时恢复两者才能启动具有相同数据的新实例。

在下一个版本中有一个新功能,如果您使用完全空的数据库(即没有存储桶)和 git 流提供程序启动一个新实例,那么它将恢复所有内容。

于 2019-04-24T12:49:20.627 回答
1

您可以通过停止 nifi-registry 0.4.0 、删除数据库文件(如果有)然后启动 nifi 注册表以基于 git repo 重建数据库来执行相同操作。

https://issues.apache.org/jira/browse/NIFIREG-209

于 2019-07-14T16:17:44.977 回答