| 358 | /// in milliseconds instead of minutes. |
| 359 | impl Drop for TestClusterNode { |
| 360 | fn drop(&mut self) { |
| 361 | self.pg_shutdown_bus.initiate(); |
| 362 | let _ = self.cluster_shutdown_tx.send(true); |
| 363 | let _ = self.poller_shutdown_tx.send(true); |
| 364 | // `core_stop_tx` is a std mpsc Sender; dropping it disconnects |
| 365 | // the receiver the spawn_blocking data-plane loop polls, so |
| 366 | // no explicit signal needed here. |
| 367 | self._conn_handle.abort(); |
| 368 | self._pg_handle.abort(); |
| 369 | self._poller_handle.abort(); |
| 370 | self._core_handle.abort(); |
| 371 | } |
| 372 | } |
| 373 | |
| 374 | pub(super) fn pg_error_detail(e: &tokio_postgres::Error) -> String { |