From d9c7fbbd82b14c99adaf7629bd05e47912d2365f Mon Sep 17 00:00:00 2001 From: Lambda Date: Sun, 9 Feb 2025 17:51:12 +0000 Subject: [PATCH] services/sending: avoid unnecessary clone --- src/database/key_value/sending.rs | 2 +- src/service/sending.rs | 11 ++++------- src/service/sending/data.rs | 2 +- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/database/key_value/sending.rs b/src/database/key_value/sending.rs index 1f7db867..70f235b7 100644 --- a/src/database/key_value/sending.rs +++ b/src/database/key_value/sending.rs @@ -55,7 +55,7 @@ impl service::sending::Data for KeyValueDatabase { fn queue_requests( &self, - requests: &[(&Destination, SendingEventType)], + requests: &[(&Destination, &SendingEventType)], ) -> Result> { let mut batch = Vec::new(); let mut keys = Vec::new(); diff --git a/src/service/sending.rs b/src/service/sending.rs index 06a2da83..803c9c1c 100644 --- a/src/service/sending.rs +++ b/src/service/sending.rs @@ -576,8 +576,7 @@ impl Service { ) -> Result<()> { let destination = Destination::Push(user.to_owned(), pushkey); let event_type = SendingEventType::Pdu(pdu_id.to_owned()); - let keys = - self.db.queue_requests(&[(&destination, event_type.clone())])?; + let keys = self.db.queue_requests(&[(&destination, &event_type)])?; self.sender .send(RequestData { destination, @@ -606,7 +605,7 @@ impl Service { }) .collect::>(); let keys = self.db.queue_requests( - &requests.iter().map(|(o, e)| (o, e.clone())).collect::>(), + &requests.iter().map(|(o, e)| (o, e)).collect::>(), )?; for ((destination, event_type), key) in requests.into_iter().zip(keys) { self.sender @@ -631,8 +630,7 @@ impl Service { ) -> Result<()> { let destination = Destination::Normal(server.to_owned()); let event_type = SendingEventType::Edu(serialized); - let keys = - self.db.queue_requests(&[(&destination, event_type.clone())])?; + let keys = self.db.queue_requests(&[(&destination, &event_type)])?; self.sender .send(RequestData { destination, @@ -653,8 +651,7 @@ impl Service { ) -> Result<()> { let destination = Destination::Appservice(appservice_id); let event_type = SendingEventType::Pdu(pdu_id); - let keys = - self.db.queue_requests(&[(&destination, event_type.clone())])?; + let keys = self.db.queue_requests(&[(&destination, &event_type)])?; self.sender .send(RequestData { destination, diff --git a/src/service/sending/data.rs b/src/service/sending/data.rs index 00795faf..39ea51d0 100644 --- a/src/service/sending/data.rs +++ b/src/service/sending/data.rs @@ -22,7 +22,7 @@ pub(crate) trait Data: Send + Sync { ) -> Result<()>; fn queue_requests( &self, - requests: &[(&Destination, SendingEventType)], + requests: &[(&Destination, &SendingEventType)], ) -> Result>; fn queued_requests<'a>( &'a self,