Bug: Keep Alive connections shared when ports are different

Postman 7.19.1 (Mac OS) appears to have a bug related to Keep Alive connections that share the same domain name, but different ports. Example:

http://localhost:8000/public
http://localhost:8001/admin

When I send a GET request to one of these endpoints via Postman, everything works fine. However, when I try to interleave GET requests to both endpoints, I receive a successful response from whichever one I hit first, and a 404 from the other. If I wait 75 seconds, then I can successfully hit the second endpoint (but the the first endpoint returns 404 until I wait another 75 seconds). If I add a “Connection: close” header to both requests, then the problem does not occur – I can interleave calls without waiting 75 seconds. Also, if I use curl to run the same requests (generated by Postman), the problem does not occur.

I also noticed that the request that Postman sends to localhost:8001 that returns the 404 response shows up in my server logs as localhost:8000 even though it says localhost:8001 in the Postman console.

Conclusion: I suspect that Postman is maintaining a connection pool for keep alive connections and incorrectly reusing connections for the same host but different ports. It should match both host and port before allowing connection reuse.

Hi, @chris.branch! This certainly sounds like a bug. Would you mind reporting it here so our Engineering team can have a look? https://github.com/postmanlabs/postman-app-support/issues

Thanks!

Done: