It’s fatal. The remote server has sent you a RST packet, which indicates an immediate dropping of the connection, rather than the usual handshake. This bypasses the normal half-closed state transition. I like this description:
“Connection reset by peer” is the TCP/IP equivalent of slamming the phone back on the hook. It’s more polite than merely not replying, leaving one hanging. But it’s not the FIN-ACK expected of the truly polite TCP/IP converseur.
Please see this post as a good starting point to debug Kong ↔ upstream connection issues:
An upstream timeout as you noted in your latest post, means that Kong (Nginx here) waited to receive the response headers from your upstream and reached its timeout value (which you can configure on the Service Object, and is 60s by default). This is most likely an issue with your upstream itself, and not Kong.