Skip to content

Commit 6228011

Browse files
authored
Use fine-grained crossbeam dependencies (#688)
1 parent 3482c47 commit 6228011

File tree

7 files changed

+12
-11
lines changed

7 files changed

+12
-11
lines changed

core/Cargo.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ arc-swap = "1.3"
2727
async-trait = "0.1"
2828
base64 = "0.21"
2929
console-subscriber = { version = "0.1", optional = true }
30-
crossbeam = "0.8"
30+
crossbeam-channel = "0.5"
31+
crossbeam-queue = "0.3"
3132
dashmap = "5.5"
3233
derive_builder = "0.12"
3334
derive_more = "0.99"

core/src/core_tests/local_activities.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use crate::{
88
worker::{client::mocks::mock_workflow_client, LEGACY_QUERY_ID},
99
};
1010
use anyhow::anyhow;
11-
use crossbeam::queue::SegQueue;
11+
use crossbeam_queue::SegQueue;
1212
use futures::{future::join_all, FutureExt};
1313
use std::{
1414
collections::HashMap,

core/src/telemetry/metrics.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -632,14 +632,14 @@ pub struct MetricsCallBuffer<I>
632632
where
633633
I: BufferInstrumentRef,
634634
{
635-
calls_rx: crossbeam::channel::Receiver<MetricEvent<I>>,
635+
calls_rx: crossbeam_channel::Receiver<MetricEvent<I>>,
636636
calls_tx: LogErrOnFullSender<MetricEvent<I>>,
637637
}
638638
#[derive(Clone, Debug)]
639-
struct LogErrOnFullSender<I>(crossbeam::channel::Sender<I>);
639+
struct LogErrOnFullSender<I>(crossbeam_channel::Sender<I>);
640640
impl<I> LogErrOnFullSender<I> {
641641
fn send(&self, v: I) {
642-
if let Err(crossbeam::channel::TrySendError::Full(_)) = self.0.try_send(v) {
642+
if let Err(crossbeam_channel::TrySendError::Full(_)) = self.0.try_send(v) {
643643
error!(
644644
"Core's metrics buffer is full! Dropping call to record metrics. \
645645
Make sure you drain the metric buffer often!"
@@ -654,7 +654,7 @@ where
654654
{
655655
/// Create a new buffer with the given capacity
656656
pub fn new(buffer_size: usize) -> Self {
657-
let (calls_tx, calls_rx) = crossbeam::channel::bounded(buffer_size);
657+
let (calls_tx, calls_rx) = crossbeam_channel::bounded(buffer_size);
658658
MetricsCallBuffer {
659659
calls_rx,
660660
calls_tx: LogErrOnFullSender(calls_tx),

core/src/worker/workflow/workflow_stream/saved_wf_inputs.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use crate::{
99
LocalActRequest, LocalActivityResolution,
1010
},
1111
};
12-
use crossbeam::queue::SegQueue;
12+
use crossbeam_queue::SegQueue;
1313
use futures::Stream;
1414
use futures_util::StreamExt;
1515
use serde::{Deserialize, Serialize};

sdk/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ async-trait = "0.1"
1717
thiserror = "1.0"
1818
anyhow = "1.0"
1919
base64 = "0.21"
20-
crossbeam = "0.8"
20+
crossbeam-channel = "0.5"
2121
derive_more = "0.99"
2222
futures = "0.3"
2323
once_cell = "1.10"

sdk/src/workflow_context.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ use crate::{
1111
IntoUpdateValidatorFunc, RustWfCmd, SignalExternalWfResult, TimerResult, UnblockEvent,
1212
Unblockable, UpdateFunctions,
1313
};
14-
use crossbeam::channel::{Receiver, Sender};
14+
use crossbeam_channel::{Receiver, Sender};
1515
use futures::{task::Context, FutureExt, Stream, StreamExt};
1616
use parking_lot::RwLock;
1717
use std::{
@@ -117,7 +117,7 @@ impl WfContext {
117117
am_cancelled: watch::Receiver<bool>,
118118
) -> (Self, Receiver<RustWfCmd>) {
119119
// We need to use a normal std channel since our receiving side is non-async
120-
let (chan, rx) = crossbeam::channel::unbounded();
120+
let (chan, rx) = crossbeam_channel::unbounded();
121121
(
122122
Self {
123123
namespace,

sdk/src/workflow_future.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ use crate::{
44
WorkflowResult,
55
};
66
use anyhow::{anyhow, bail, Context as AnyhowContext, Error};
7-
use crossbeam::channel::Receiver;
7+
use crossbeam_channel::Receiver;
88
use futures::{future::BoxFuture, FutureExt};
99
use std::{
1010
collections::{hash_map::Entry, HashMap},

0 commit comments

Comments
 (0)