24e7a11abc
The implementation was keeping delayed jobs in std::set sorted only by the scheduled execution time (in microseconds since epoch). So two jobs submitted to a worker and having the same scheduled time were considered equivalent by the set, and one of them got lost. Fix this by using std::multiset instead of std::set.