どうやら、connection.close() を書かなかった場合は、次の新しいコネクションを確立しようとしたタイミングで(= connection 変数に再代入したタイミングで)以前のコネクションが切断されるようです。
デストラクタ的なものが走るのだろうが、実際に試すのは大事だな。
(2022/04/03)