pub struct PostgresScheduler { /* private fields */ }Expand description
Postgres admission pipeline. See the module rustdoc for pipeline + isolation notes.
Implementations§
Source§impl PostgresScheduler
impl PostgresScheduler
pub fn new(pool: PgPool) -> Self
Sourcepub async fn claim_for_worker(
&self,
lane: &LaneId,
worker_id: &WorkerId,
worker_instance_id: &WorkerInstanceId,
worker_capabilities: &BTreeSet<String>,
grant_ttl_ms: u64,
) -> Result<Option<ClaimGrant>, EngineError>
pub async fn claim_for_worker( &self, lane: &LaneId, worker_id: &WorkerId, worker_instance_id: &WorkerInstanceId, worker_capabilities: &BTreeSet<String>, grant_ttl_ms: u64, ) -> Result<Option<ClaimGrant>, EngineError>
Find an eligible execution, admit it against budget + quota,
and issue a signed ClaimGrant. Returns Ok(None) when no
candidate is admissible on this lane right now.
Auto Trait Implementations§
impl Freeze for PostgresScheduler
impl !RefUnwindSafe for PostgresScheduler
impl Send for PostgresScheduler
impl Sync for PostgresScheduler
impl Unpin for PostgresScheduler
impl UnsafeUnpin for PostgresScheduler
impl !UnwindSafe for PostgresScheduler
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more