That seems to be bug in Hadoop, actually.
BuiltInGzipDecompressor.end() needs to be called to release it's resource, but it is not called anywhere in CodecPool.
Instead the end() is called by finalize(), which is only called during a full gc (or never, depending on JVM).
This is only an issue in test. In real life most folks will have the native GzipDecompressor