From 1376ab397b05b913e1bb313102d3cfa94da20905 Mon Sep 17 00:00:00 2001 From: Guy Lapid Date: Tue, 20 Jul 2021 11:22:46 +0300 Subject: [PATCH] Use tokio `spawn_blocking` instead of `block_in_place` This fixes a panic when sharing an SQLite connection pool between tokio runtime and actix runtime --- sqlx-rt/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sqlx-rt/src/lib.rs b/sqlx-rt/src/lib.rs index 9c9a68a534..4b5cd77823 100644 --- a/sqlx-rt/src/lib.rs +++ b/sqlx-rt/src/lib.rs @@ -105,7 +105,8 @@ pub use tokio_rustls::{client::TlsStream, TlsConnector}; #[macro_export] macro_rules! blocking { ($($expr:tt)*) => { - $crate::tokio::task::block_in_place(move || { $($expr)* }) + $crate::tokio::task::spawn_blocking(move || { $($expr)* }) + .await.expect("Blocking task failed to complete.") }; }