Spring Cloud Data Flow 上传包失败。存储库 [local] 中的包 [test-stream-comments:1.0.0] 已存在
Posted
技术标签:
【中文标题】Spring Cloud Data Flow 上传包失败。存储库 [local] 中的包 [test-stream-comments:1.0.0] 已存在【英文标题】:Spring Cloud Data Flow Failed to upload the package. Package [test-stream-comments:1.0.0] in Repository [local] already exists 【发布时间】:2020-01-27 19:26:54 【问题描述】:我在 Spring 云数据流中创建了一些流。我部署了它们,它们运行平稳。然后我取消部署它们,当我尝试通过单击“部署流”重新部署流时,我收到一个红色错误提示,上面写着"Spring Cloud Data Flow Failed to upload the package. Package [test-stream-comments:1.0.0] in Repository [local] already exists."
这是否意味着我必须销毁流并重新创建和部署流?这违背了通过单击按钮来部署和取消部署流的目的?
【问题讨论】:
【参考方案1】:尝试运行 spring-cloud-dataflow-shell 并运行:
stream undeploy facebook-stream-comments
.
然后尝试从 Web UI 再次部署此流。
更新。
我继续研究并找到解决此问题的其他低级方法:
我连接到mysql db并删除了所有记录,链接到坏包:
delete from `dataflow`.`skipper_status` where (`id` = '...');
delete from `dataflow`.`skipper_info` where (`id` = '...');
delete from `dataflow`.`skipper_app_deployer_data` where (`id` = '...');
delete from `dataflow`.`skipper_release` where (`id` = '...');
delete from `dataflow`.`skipper_package_file` where (`id` = '...');
delete from `dataflow`.`skipper_package_metadata` where (`id` = '...');
然后重启`spring-cloud-skipper-server.jar
但是这种方式是困难和不正确的(可能)。
【讨论】:
我做了“stream undeploy facebook-stream-cmets”,然后在 web ui 上再次启动它。它有效 重启我的 docker-compose 集群导致了同样的错误。它已通过您建议的 shell 命令解决。知道根本问题是什么吗?【参考方案2】:如果上述方法不起作用,另一种解决方法如下:
select * from skipper_release where name = 'streamName' order by id desc,从 info_id 列中获取值并转到下一步
select * from skipper_info where id = info_id(来自上述步骤), 从 status_id 列中获取值并转到下一步
select * from skipper_status where id = status_id(来自上述步骤), 在这里检查 status_code 列的值,如果它不是 已删除,然后执行下一步。从 id 列获取值并转到 下一步
更新skipper_status set status_code = 'DELETED' where id = id (从上面的步骤)
启动 SCDF shell,进入 D:\sys_apps_01\scdf,打开 CMD 并运行 以下命令:java -jar spring-cloud-dataflow-shell-2.0.1.RELEASE.jar
运行命令:stream undeploy --name streamName
在此之后尝试部署流。
【讨论】:
以上是关于Spring Cloud Data Flow 上传包失败。存储库 [local] 中的包 [test-stream-comments:1.0.0] 已存在的主要内容,如果未能解决你的问题,请参考以下文章
Swarm 的 Spring Cloud Data Flow 支持
Spring Cloud Data Flow 的自定义任务中缺少参数