Skip to content

Commit d1d2ff3

Browse files
committed
ref: Reorder project cache dependencies
1 parent bd6071f commit d1d2ff3

File tree

3 files changed

+10
-13
lines changed

3 files changed

+10
-13
lines changed

relay-server/src/actors/project.rs

+4-5
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,13 @@ use relay_sampling::SamplingConfig;
2424

2525
use crate::actors::events::{EventManager, SendMetrics};
2626
use crate::actors::outcome::DiscardReason;
27+
use crate::actors::outcome::OutcomeProducer;
2728
use crate::actors::project_cache::{FetchProjectState, ProjectCache, ProjectError};
2829
use crate::envelope::Envelope;
2930
use crate::extractors::RequestMeta;
3031
use crate::metrics::RelayCounters;
3132
use crate::utils::{ActorResponse, EnvelopeLimiter, Response};
3233

33-
use super::outcome::OutcomeProducer;
34-
3534
/// The current status of a project state. Return value of `ProjectState::outdated`.
3635
#[derive(Clone, Copy, Debug, Eq, PartialEq, Hash)]
3736
pub enum Outdated {
@@ -455,12 +454,12 @@ pub struct Project {
455454
config: Arc<Config>,
456455
manager: Addr<ProjectCache>,
457456
event_manager: Addr<EventManager>,
457+
outcome_producer: Addr<OutcomeProducer>,
458458
aggregator: AggregatorState,
459459
state: Option<Arc<ProjectState>>,
460460
state_channel: Option<StateChannel>,
461461
rate_limits: RateLimits,
462462
last_no_cache: Instant,
463-
outcome_producer: Addr<OutcomeProducer>,
464463
}
465464

466465
impl Project {
@@ -470,19 +469,19 @@ impl Project {
470469
config: Arc<Config>,
471470
manager: Addr<ProjectCache>,
472471
event_manager: Addr<EventManager>,
473-
outcome_producer: &Addr<OutcomeProducer>,
472+
outcome_producer: Addr<OutcomeProducer>,
474473
) -> Self {
475474
Project {
476475
public_key: key,
477476
config,
478477
manager,
479478
event_manager,
479+
outcome_producer,
480480
aggregator: AggregatorState::Unknown,
481481
state: None,
482482
state_channel: None,
483483
rate_limits: RateLimits::new(),
484484
last_no_cache: Instant::now(),
485-
outcome_producer: outcome_producer.clone(),
486485
}
487486
}
488487

relay-server/src/actors/project_cache.rs

+5-7
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,14 @@ use relay_config::{Config, RelayMode};
1313
use relay_redis::RedisPool;
1414

1515
use crate::actors::events::EventManager;
16+
use crate::actors::outcome::OutcomeProducer;
1617
use crate::actors::project::{Project, ProjectState};
1718
use crate::actors::project_local::LocalProjectSource;
1819
use crate::actors::project_upstream::UpstreamProjectSource;
1920
use crate::actors::upstream::UpstreamRelay;
2021
use crate::metrics::{RelayCounters, RelayHistograms, RelayTimers};
2122
use crate::utils::Response;
2223

23-
use super::outcome::OutcomeProducer;
24-
2524
#[cfg(feature = "processing")]
2625
use {crate::actors::project_redis::RedisProjectSource, relay_common::clone};
2726

@@ -46,21 +45,20 @@ pub struct ProjectCache {
4645
projects: HashMap<ProjectKey, ProjectEntry>,
4746

4847
event_manager: Addr<EventManager>,
48+
outcome_producer: Addr<OutcomeProducer>,
4949
local_source: Addr<LocalProjectSource>,
5050
upstream_source: Addr<UpstreamProjectSource>,
5151
#[cfg(feature = "processing")]
5252
redis_source: Option<Addr<RedisProjectSource>>,
53-
54-
outcome_producer: Addr<OutcomeProducer>,
5553
}
5654

5755
impl ProjectCache {
5856
pub fn new(
5957
config: Arc<Config>,
6058
event_manager: Addr<EventManager>,
59+
outcome_producer: Addr<OutcomeProducer>,
6160
upstream_relay: Addr<UpstreamRelay>,
6261
_redis: Option<RedisPool>,
63-
outcome_producer: Addr<OutcomeProducer>,
6462
) -> Self {
6563
let local_source = LocalProjectSource::new(config.clone()).start();
6664
let upstream_source = UpstreamProjectSource::new(config.clone(), upstream_relay).start();
@@ -81,11 +79,11 @@ impl ProjectCache {
8179
projects: HashMap::new(),
8280

8381
event_manager,
82+
outcome_producer,
8483
local_source,
8584
upstream_source,
8685
#[cfg(feature = "processing")]
8786
redis_source,
88-
outcome_producer,
8987
}
9088
}
9189

@@ -162,7 +160,7 @@ impl Handler<GetProject> for ProjectCache {
162160
config,
163161
context.address(),
164162
self.event_manager.clone(),
165-
&self.outcome_producer,
163+
self.outcome_producer.clone(),
166164
)
167165
.start();
168166

relay-server/src/service.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -142,9 +142,9 @@ impl ServiceState {
142142
let project_cache = ProjectCache::new(
143143
config.clone(),
144144
event_manager.clone(),
145+
outcome_producer.clone(),
145146
upstream_relay.clone(),
146147
redis_pool,
147-
outcome_producer.clone(),
148148
)
149149
.start();
150150

0 commit comments

Comments
 (0)