This has the desirable effect of exercising allocation error recovery code that might appear anywhere in the call chain. However, if that error recovery code contains a bug that only manifests itself when the program variables assume some particular state, the bug may not be found. One can imagine an allocator that fails pseudo-randomly according to some probability distribution, but again, the more failures, the longer the run time, with no guarantee of finding all possible bugs in the recovery code. In the real world, people also make various adjustments when faced with short lines, the most prominent of which is to use the service more, causing the lines to get longer very fast. This is shown in analyses of real-world commuter traffic patterns.
People use the shortest way to work available.
So if there's a congestion and you build a new bypass, within a few weeks more people will use the new road, until it's just as congested as before. Unless you eliminate all points where congestions can form, which is of course impossible in the real world. The better way to reduce congestion is to offer an alternate service. This reminds me of an incident that happened about 2 years ago. In Toronto, we used to have these wonderful wall-mounted ATM's in shopping malls.