- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个单步 springbatch 应用程序。工作如下:
@Bean
public Job databaseCursorJob(@Qualifier("databaseCursorStep") Step exampleJobStep,
JobBuilderFactory jobBuilderFactory) {
return jobBuilderFactory.get("databaseCursorJob")
.incrementer(new RunIdIncrementer())
.flow(exampleJobStep)
.end()
.build();
}
我从 springboot 应用程序开始工作。今天下午,我试图为这项工作添加第二步。大致如下:
@Bean
public Job databaseCursorJob(@Qualifier("databaseCursorStep") Step exampleJobStep,
JobBuilderFactory jobBuilderFactory) {
return jobBuilderFactory.get("databaseCursorJob")
.incrementer(new RunIdIncrementer())
.flow(exampleJobStep).next(partitionStep())
.end()
.build();
}
换句话说,只需添加“next(partitionStep())。但是,自从我这样做之后,作业完成而不执行任何步骤(请参阅下面的shell输出)。事实上,即使在删除第二步并返回到原来的工作,它拒绝执行这一步。在尝试添加第二步之前,我从未遇到过这个问题。我已经重新启动了我的VM,它仍然跳过了这一步。我在水中死了,直到我解决了这个问题。感谢任何见解。谢谢。
2020-09-01 14:49:00.260 INFO 6913 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8087 (http) with context path ''
2020-09-01 14:49:00.263 INFO 6913 --- [ main] f.p.r.Application : Started Application in 7.752 seconds (JVM running for 9.092)
2020-09-01 14:49:00.268 INFO 6913 --- [ main] o.s.b.a.b.JobLauncherCommandLineRunner : Running default command line with: []
2020-09-01 14:49:00.579 INFO 6913 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [FlowJob: [name=databaseCursorJob]] launched with the following parameters: [{}]
2020-09-01 14:49:00.698 INFO 6913 --- [ main] o.s.batch.core.job.SimpleStepHandler : Step already complete or not restartable, so no action to execute: StepExecution: id=120, version=4, name=databaseCursorStep, status=COMPLETED, exitStatus=COMPLETED, readCount=1, filterCount=0, writeCount=1 readSkipCount=0, writeSkipCount=0, processSkipCount=0, commitCount=2, rollbackCount=0, exitDescription=
2020-09-01 14:49:00.730 INFO 6913 --- [ main] o.s.b.c.l.support.SimpleJobLauncher : Job: [FlowJob: [name=databaseCursorJob]] completed with the following parameters: [{}] and the following status: [COMPLETED]
最佳答案
我的问题是,如果出现错误或陷入未知状态,我的工作将无法恢复。该步骤不是“已经完成”,它从未完成。它的状态仍然是“STARTED”,退出代码是“UNKNOWN”,因为它从未退出。无论如何,我的作业存储库不在内存中,而是被捕获到本地数据库中,这就是为什么即使在重新启动 VM 后它也从未自行解决的原因(我很遗憾没有记住这一点)。因此,我能够通过清除作业实例历史记录来修复,但这只是创可贴。我仍然需要修复我的代码以防止它再次发生。
我还了解到我可以通过检查数据库中的作业存储库(全部都在那里)来进行诊断。
我真的解决了这个问题,感谢 Hassine 先生,他在上面多次回复并指出我正确的方向。他在第一次回复中提供的链接中确实提到了以后预防的解决方案:Spring Batch error (A Job Instance Already Exists) and RunIdIncrementer generates only once
关于java - Spring Batch - 步骤不再执行 : Step already complete or not restartable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63694023/
我的 Windows 使用 Ubuntu 设置了 WSL。它已经工作了一段时间,直到我升级到 WSL2。 问题是:每次我启动我的电脑(或重新启动我的电脑)时,它都会失去从 Ubuntu 到 Windo
我正在使用 docker 版本 1.1.0,由 systemd 使用命令行启动 /usr/bin/docker -d ,并试图: 运行容器 停止 docker 服务 重新启动 docker 服务(使用
鉴于以下(为了论证而简化)docker-compose.yml文件: version: '3' services: postgres: image: fleetit-postgres
我使用 Vertx SockJs 构建了一个 Eventbus 桥。 这是我的verticle的代码: @Override public void start() throws Exception {
使用docker stack deploy,我可以看到如下信息: Ignoring unsupported options: restart 是否意味着重启政策没有到位? 是否必须在撰写文件之外指定它
我们的 Varnish 实例 /usr/sbin/varnishd -P /var/run/varnish.pid -a :6081 -f /etc/varnish/cm-varnish.vcl -
Varnish 是否保留崩溃/重启日志? 我目前正在监控一个 varnish 服务器,它似乎每周都会重新启动,当 CPU 使用率达到大约 100%(负载有点高 - 在 2 核机器上大约 6~7)并且
我有一个 Android 应用程序,在您第一次运行时运行良好。但是,当您按 HOME(因此暂停)并从主屏幕重新启动它时,我得到的只是音乐重新启动。 我还没有进入保存/恢复状态的阶段(很快就会完成!)。
我的应用程序有一个服务,每 X 分钟对数据库执行与 stopSelf() 相同的操作,并进入 onDestroy 方法我已经放置了这段代码以便在同一时间后重新启动服务: @Override publi
复制代码 代码如下: '******************************************************************** '* '* 
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
我检查了我在 ECS 集群中运行的一个 docker 容器,它的重启策略为空白(“{{ .HostConfig.RestartPolicy.Name }}”)。我不确定 ECS 在发生故障时会做什么,
我用 Google Cloud Shell运行 Jupyter Notebook在实例上,但在 1 hours 之后,连接断开。 我重新连接到实例,什么都没有,与重置实例相同。 So, please
Java中是否有任何命令或程序可以重新启动我的应用程序本身? 我开发了一个 Java 桌面应用程序,但过了一段时间它就会挂起。我不知道为什么,所以我想重新启动我的应用程序本身。是否可以? 最佳答案 你
我已经创建了一个容器,却忘记了在创建容器时设置--restart ='always'。 是否可以为已经创建的容器修改此选项?我知道我可以创建一个新的,但这很有用,因为它发生在我身上好几次了... 最佳
是否可以使用 pm2 重新启动特定组的应用程序?像 pm2 restart service-* 重新启动 service-a 和 service-b 之类的东西?我发现 pm2 restart ser
我是一个刚开始使用C++编写代码已经有几个星期了。我已经编写了一个程序来拥有一个菜单,用户可以从中选择执行不同任务的选项。我有两个问题:首先,我该如何做,以便在执行任务后将用户发送回菜单;其次,当用户
所以我有一个应用程序,用户通过 3 个 View Controller 然后向 Facebook 提交图片。在他们将其提交到 Facebook 后,我希望他们能够选择重新启动该过程,就好像他们重新启动
我正在尝试构建一个 hadoop Dockerfile。 在构建过程中,我添加了: && apt install -y openssh-client \ && apt install -y o
当您运行docker run时,可以选择添加--rm和--restart。但是,如何在dockerfile中获得相同的效果? 最佳答案 Dockerfile用于指定构建镜像的指令。 生成镜像后,可以使
我是一名优秀的程序员,十分优秀!