Added extra logic to handle lack of client pool

This changes make sure in case no client pool exists when _cache is
invoked it will than create one.

Also made the failed compression related tests to pass