Send `plan` to the Data Plane and await the response. This is async — it yields the Tokio thread while waiting, so the response poller can deliver the result without deadlocking.
(
state: &SharedState,
tenant_id: TenantId,
collection: &str,
plan: PhysicalPlan,
timeout: Duration,
)
| 15 | /// This is async — it yields the Tokio thread while waiting, so the |
| 16 | /// response poller can deliver the result without deadlocking. |
| 17 | pub async fn dispatch_async( |
| 18 | state: &SharedState, |
| 19 | tenant_id: TenantId, |
| 20 | collection: &str, |
| 21 | plan: PhysicalPlan, |
| 22 | timeout: Duration, |
| 23 | ) -> crate::Result<Vec<u8>> { |
| 24 | dispatch_async_with_source( |
| 25 | state, |
| 26 | tenant_id, |
| 27 | collection, |
| 28 | plan, |
| 29 | timeout, |
| 30 | crate::event::EventSource::User, |
| 31 | ) |
| 32 | .await |
| 33 | } |
| 34 | |
| 35 | /// Send `plan` to the Data Plane with an explicit event source. |
| 36 | /// |
no test coverage detected