A library for composable fine-grained concurrency.
turon's web site
Benchmarks for async IO
aturon/Caper 10
Caper: concurrent and parallel extensions to Racket
Benchmarks for the Scala Chemistry Set
unixy config files
RFCs for changes to the `futures` crate
RFC process for Bytecode Alliance projects
the home of the new rust website - now in beta!
Pull request review commentfastly/Viceroy
Byoung/object store async lookup
impl Session { /// Insert a [`PendingLookup`] into the session. ///- /// This method returns a new [`PendingObjectStoreHandle`], which can then be used to access+ /// This method returns a new [`PendingKvLookupHandle`], which can then be used to access /// and mutate the pending lookup.- pub fn insert_pending_lookup(- &mut self,- pending: PeekableTask<Result<Vec<u8>, ObjectStoreError>>,- ) -> PendingObjectStoreHandle {+ pub fn insert_pending_lookup(&mut self, pending: PendingKvTask) -> PendingKvLookupHandle { self.async_items- .push(Some(AsyncItem::PendingLookup(pending)))+ .push(Some(AsyncItem::PendingKvLookup(pending))) .into() } - /// Take ownership of a [`PendingLookup`], given its [`PendingObjectStoreHandle`].+ /// Take ownership of a [`PendingLookup`], given its [`PendingKvLookupHandle`]. /// /// Returns a [`HandleError`] if the handle is not associated with a pending lookup in the /// session. pub fn take_pending_lookup( &mut self,- handle: PendingObjectStoreHandle,- ) -> Result<PeekableTask<Result<Vec<u8>, ObjectStoreError>>, HandleError> {+ handle: PendingKvLookupHandle,+ ) -> Result<PendingKvTask, HandleError> { // check that this is a pending request before removing it let _ = self.pending_lookup(handle)?; self.async_items .get_mut(handle.into()) .and_then(Option::take) .and_then(AsyncItem::into_pending_lookup)- .ok_or(HandleError::InvalidPendingLookupHandle(handle))+ .ok_or(HandleError::InvalidPendingKvLookupHandle(handle)) } - /// Get a reference to a [`PendingLookup`], given its [`PendingObjectStoreHandle`].+ /// Get a reference to a [`PendingLookup`], given its [`PendingKvLookupHandle`]. /// /// Returns a [`HandleError`] if the handle is not associated with a lookup in the /// session. pub fn pending_lookup(
Can you rename these functions to include kv
as well?
comment created time in a month
Pull request review commentfastly/Viceroy
Byoung/object store async lookup
impl Session { /// Insert a [`PendingLookup`] into the session. ///- /// This method returns a new [`PendingObjectStoreHandle`], which can then be used to access+ /// This method returns a new [`PendingKvLookupHandle`], which can then be used to access /// and mutate the pending lookup.- pub fn insert_pending_lookup(- &mut self,- pending: PeekableTask<Result<Vec<u8>, ObjectStoreError>>,- ) -> PendingObjectStoreHandle {+ pub fn insert_pending_lookup(&mut self, pending: PendingKvTask) -> PendingKvLookupHandle { self.async_items- .push(Some(AsyncItem::PendingLookup(pending)))+ .push(Some(AsyncItem::PendingKvLookup(pending))) .into() } - /// Take ownership of a [`PendingLookup`], given its [`PendingObjectStoreHandle`].+ /// Take ownership of a [`PendingLookup`], given its [`PendingKvLookupHandle`]. /// /// Returns a [`HandleError`] if the handle is not associated with a pending lookup in the /// session. pub fn take_pending_lookup(
Can you rename these functions to include kv
as well?
comment created time in a month
Pull request review commentfastly/Viceroy
Byoung/object store async lookup
impl Session { /// Insert a [`PendingLookup`] into the session. ///- /// This method returns a new [`PendingObjectStoreHandle`], which can then be used to access+ /// This method returns a new [`PendingKvLookupHandle`], which can then be used to access /// and mutate the pending lookup.- pub fn insert_pending_lookup(- &mut self,- pending: PeekableTask<Result<Vec<u8>, ObjectStoreError>>,- ) -> PendingObjectStoreHandle {+ pub fn insert_pending_lookup(&mut self, pending: PendingKvTask) -> PendingKvLookupHandle {
Can you rename these functions to include kv
as well?
comment created time in a month
Pull request review commentfastly/Viceroy
Byoung/object store async lookup
pub enum AsyncItem { Body(Body), StreamingBody(StreamingBody), PendingReq(PeekableTask<Response<Body>>),+ PendingLookup(PeekableTask<Result<Vec<u8>, ObjectStoreError>>),
Can we call this variant PendingKvLookup
(and rename the session functions accordingly)?
comment created time in a month
Pull request review commentfastly/Viceroy
Byoung/object store async lookup
(typename $dictionary_handle (handle)) ;;; A handle to an Object Store. (typename $object_store_handle (handle))+;;; A handle to a pending Object Store request.+(typename $pending_object_store_handle (handle))
We might want to call this $pending_object_store_lookup_handle
. I realize that's verbose, but it makes room for other async operations on the object story. (And, with the impending rename, it'd be $pending_kv_lookup_handle
which isn't too bad.)
comment created time in a month
pull request commentfastly/Viceroy
:yo_yo: Update dynamic backends support to handle the "don't pool" flag.
There might be a good reason to keep the flag check: Viceroy is often used for testing SDK implementations, and having feedback about invalid flags could be invaluable for debugging.
wdyt?
comment created time in 3 months