Maybe I miss the point: but can you have a second look at that?

My code change above leads to the same behaviour as before my change: which was to collect and return the timeout exception(s): either the single exception or the multiplelfailureexception in case of more than one.