Indeed it might happen that a job is destroyed but never had the chance
to emit result(). In such case the handlers of that job were staying
into the map. Clearly inefficient memory wise, but also dangerous if it
happened that a new job later on ended up at the same address, on
result() it would then trigger its own handlers and those of the old
dead job, could lead to quite unexpected behavior.
Very unlikely scenario in production, but happened regularly because of
AkonadiFakeStorageTest::shouldUseTransaction()