Use Moqui Framework to build enterprise applications based on Java. It includes tools for databases (relational, graph, document), local and web services, web and other UI with screens and forms, security, file/resource access, scripts, templates, l10n, caching, logging, search, rules, workflow, multi-instance, and integration.
When a Job Run is interrupted and never ends (e.g. due to a server crash), moqui will at first wait for the expireLockTime specified in the Service Job. After that time, the lock will be cleared, but the lastRunTime would remain at the time the lock was acquired, which is interpreted as the las time the job was successfully run.
This PR fixes this issue, setting the lastRunTime either back to the last successful Job Run, or null if there has not been one. This is the same behavior applied when moqui handles an error during the execution of the Job Run.
When a Job Run is interrupted and never ends (e.g. due to a server crash), moqui will at first wait for the expireLockTime specified in the Service Job. After that time, the lock will be cleared, but the lastRunTime would remain at the time the lock was acquired, which is interpreted as the las time the job was successfully run. This PR fixes this issue, setting the lastRunTime either back to the last successful Job Run, or null if there has not been one. This is the same behavior applied when moqui handles an error during the execution of the Job Run.