org.quartz.SchedulerException:在Magnolia中已关闭调度程序

时间:2018-11-01 13:26:50

标签: java quartz-scheduler magnolia web-publishing

由于以下提到的错误,木兰中的日程安排发布失败。 Scheduler自动关闭,并导致发布失败。如果我重新启动作者实例,则Scheduler启动,并且安排发布工作正常。

哪些导致关闭调度程序的关键操作?

是否为调度程序设置了任何时间范围?

ERROR  info.magnolia.task.schedule.DefaultTaskSchedulerService 30.10.2018 10:28:40 -- Could not schedule job [publish_9e827f8d-89f2-4c61-a0c5-bfe84d5c3a7e].
    org.quartz.SchedulerException: The Scheduler has been shutdown.
        at org.quartz.core.QuartzScheduler.validateState(QuartzScheduler.java:795)
        at org.quartz.core.QuartzScheduler.scheduleJob(QuartzScheduler.java:846)
        at org.quartz.impl.StdScheduler.scheduleJob(StdScheduler.java:249)
        at info.magnolia.task.schedule.DefaultTaskSchedulerService.schedule(DefaultTaskSchedulerService.java:90)
        at info.magnolia.task.DefaultTasksManager.scheduleTask(DefaultTasksManager.java:126)
        at info.magnolia.module.workflow.jbpm.workitem.handler.ScheduleTaskWorkItemHandler.executeWorkItem(ScheduleTaskWorkItemHandler.java:49)
        at info.magnolia.module.workflow.jbpm.persistence.WorkItemHandlerSystemContextWrapper$1.exec(WorkItemHandlerSystemContextWrapper.java:37)
        at info.magnolia.module.workflow.jbpm.persistence.WorkItemHandlerSystemContextWrapper$1.exec(WorkItemHandlerSystemContextWrapper.java:33)
        at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:400)
        at info.magnolia.context.MgnlContext.doInSystemContext(MgnlContext.java:378)
        at info.magnolia.module.workflow.jbpm.persistence.WorkItemHandlerSystemContextWrapper.executeWorkItem(WorkItemHandlerSystemContextWrapper.java:33)
        at org.drools.persistence.jcr.processinstance.JcrWorkItemManager.internalExecuteWorkItem(JcrWorkItemManager.java:76)
        at org.jbpm.workflow.instance.node.WorkItemNodeInstance.internalTrigger(WorkItemNodeInstance.java:138)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:173)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:366)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerConnection(NodeInstanceImpl.java:381)
        at org.jbpm.workflow.instance.node.SplitInstance.executeStrategy(SplitInstance.java:117)
        at org.jbpm.workflow.instance.node.SplitInstance.internalTrigger(SplitInstance.java:63)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.trigger(NodeInstanceImpl.java:173)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerNodeInstance(NodeInstanceImpl.java:366)
        at org.jbpm.workflow.instance.impl.NodeInstanceImpl.triggerCompleted(NodeInstanceImpl.java:325)
        at org.jbpm.workflow.instance.node.StartNodeInstance.triggerCompleted(StartNodeInstance.java:73)
        at org.jbpm.workflow.instance.node.StartNodeInstance.internalTrigger(StartNodeInstance.java:44

> Blockquote

1 个答案:

答案 0 :(得分:0)

  

哪些导致关闭调度程序的关键操作?

唯一使它崩溃的操作是用户启动的关机。

  

是否为调度程序设置了任何时间范围?

否。

唯一合理的解释似乎是通过程序触发的关机。 由于此问题尚未得到广泛报道(我个人以前从未听说过,而且我敢说我在过去几年中已经看到了有关Magnolia的大部分问题),因此,我将搜索您的自定义代码或任何社区或第三方模块您已安装。也许您还可以创建小型计划任务,例如超过常规,并且每分钟执行一次。如果任务仅是打印log语句,则不应增加实例的开销,而可以让您更好地确定关闭发生的时间(在最后一条log语句之后的几分钟内),也许它还可以帮助您找到找出造成关机的原因。

在执行此操作之前,您可能还希望在检测到关闭之前检查日志文件是否发生了任何异常,但是我想您已经完成了此操作。

相关问题