cfengine/core — pull request #2026 by kacfengine (2014-11-07 13:52:41+00:00)
Title: Redmine #6623: Fix agents constantly retrying long running promises.

The expireafter default should be two hours, but it was erronously set to one minute in the initialization code, so remove that and stick to the globally set value.

This fixes the problem where, when transferring a large file that takes longer than the execution interval to finish, no agent will ever succeed. What happens is that if a second cf-agent starts downloading the same file, locking will not prevent the attempt, despite already being in progress by the first agent. No agent will ever succeed, because the second agent will delete the temporary file created by the first agent, then create its own temporary file, which will be deleted by the third agent, and so on.