| 24 | /// Send an already-planned `PhysicalPlan` to a remote node for execution. |
| 25 | #[derive(Debug, Clone, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)] |
| 26 | pub struct ExecuteRequest { |
| 27 | /// zerompk-encoded PhysicalPlan (via nodedb::bridge::physical_plan::wire::encode). |
| 28 | pub plan_bytes: Vec<u8>, |
| 29 | /// Tenant ID authenticated on the originating node; trusted on the receiver. |
| 30 | pub tenant_id: u64, |
| 31 | /// Database scope authenticated on the originating node; trusted on the receiver. |
| 32 | /// `0` maps to `DatabaseId::DEFAULT` (the built-in `default` database). |
| 33 | pub database_id: u64, |
| 34 | /// Milliseconds remaining until the caller's deadline. |
| 35 | /// 0 means the deadline has already expired — receiver returns DeadlineExceeded. |
| 36 | pub deadline_remaining_ms: u64, |
| 37 | /// Distributed trace ID for observability (16-byte W3C-compatible TraceId). |
| 38 | pub trace_id: [u8; 16], |
| 39 | /// Caller's view of descriptor versions for every collection touched by the plan. |
| 40 | pub descriptor_versions: Vec<DescriptorVersionEntry>, |
| 41 | } |
| 42 | |
| 43 | /// Response to an `ExecuteRequest`. |
| 44 | #[derive(Debug, Clone, rkyv::Archive, rkyv::Serialize, rkyv::Deserialize)] |
no outgoing calls