diff --git a/src/http_server.rs b/src/http_server.rs index 44c9a0fd579e928e4bb07b704547ceb8de7b3fbf..53d47eef64913497fde9729c552e5500b66754cd 100644 --- a/src/http_server.rs +++ b/src/http_server.rs @@ -299,13 +299,13 @@ fn get_replicasets_info( let replicaset_id = instance.replicaset_id; let mut is_leader = false; - let mut replicaset_uuid = Default::default(); + let mut replicaset_uuid = String::new(); let mut tier = instance.tier.clone(); if let Some(replicaset) = replicasets.get(&replicaset_id) { is_leader = replicaset.current_master_id == instance.instance_id; - replicaset_uuid = replicaset.replicaset_uuid.clone(); + replicaset_uuid.clone_from(&replicaset.replicaset_uuid); debug_assert_eq!(replicaset.tier, instance.tier); - tier = replicaset.tier.clone(); + tier.clone_from(&replicaset.tier); } let mut http_address = String::new(); @@ -313,8 +313,8 @@ fn get_replicasets_info( let mut mem_usable: u64 = 0u64; let mut mem_used: u64 = 0u64; if let Some(data) = instances_props.get(&instance.raft_id) { - http_address = data.httpd_address.clone(); - version = data.version.clone(); + http_address.clone_from(&data.httpd_address); + version.clone_from(&data.version); mem_usable = data.mem_usable; mem_used = data.mem_used; } diff --git a/src/rpc/join.rs b/src/rpc/join.rs index a972861c48223012ef66ef423476f16449307113..3f6f784c645e7e1f9e5307a56d2be8cf91de7c0f 100644 --- a/src/rpc/join.rs +++ b/src/rpc/join.rs @@ -217,7 +217,7 @@ pub fn build_instance( .expect("storage should not fail") + 1; let instance_id = instance_id - .map(Clone::clone) + .cloned() .unwrap_or_else(|| choose_instance_id(raft_id, storage)); let replicaset_id = match replicaset_id { Some(replicaset_id) => replicaset_id.clone(), diff --git a/src/tarantool.rs b/src/tarantool.rs index 71b65e68c92a14751f0a1bd28da3dbb0116dfefb..d80d0bef9f3070ff11d6cd2148ac349312fc6946 100644 --- a/src/tarantool.rs +++ b/src/tarantool.rs @@ -225,7 +225,7 @@ impl Cfg { } pub fn set_core_parameters(&mut self, config: &PicodataConfig) -> Result<(), Error> { - self.log = config.instance.log.destination.clone(); + self.log.clone_from(&config.instance.log.destination); self.log_level = Some(config.instance.log_level() as _); self.wal_dir = config.instance.data_dir(); diff --git a/src/to_rmpv_named.rs b/src/to_rmpv_named.rs index a2397a2c996693b8638869f9f8dadf55e9e4326e..513d892e2f892fc0e7f7a5d949f64ec5eb5a3a51 100644 --- a/src/to_rmpv_named.rs +++ b/src/to_rmpv_named.rs @@ -131,13 +131,13 @@ impl ser::Serializer for RmpvNamedSerializer { } #[inline] - fn serialize_newtype_struct<T: ?Sized>( + fn serialize_newtype_struct<T>( self, name: &'static str, value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { if name == rmpv::MSGPACK_EXT_STRUCT_NAME { let mut ext_se = ExtSerializer::new(); @@ -150,7 +150,7 @@ impl ser::Serializer for RmpvNamedSerializer { } #[inline] - fn serialize_newtype_variant<T: ?Sized>( + fn serialize_newtype_variant<T>( self, _name: &'static str, _idx: u32, @@ -158,7 +158,7 @@ impl ser::Serializer for RmpvNamedSerializer { value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Ok(Value::Map(vec![( Value::from(variant), @@ -172,9 +172,9 @@ impl ser::Serializer for RmpvNamedSerializer { } #[inline(always)] - fn serialize_some<T: ?Sized>(self, value: &T) -> Result<Self::Ok, Self::Error> + fn serialize_some<T>(self, value: &T) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { value.serialize(self) } @@ -386,13 +386,13 @@ impl ser::Serializer for &mut ExtSerializer { } #[cold] - fn serialize_newtype_struct<T: ?Sized>( + fn serialize_newtype_struct<T>( self, _name: &'static str, _value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected tuple, received newtype_struct", @@ -400,7 +400,7 @@ impl ser::Serializer for &mut ExtSerializer { } #[cold] - fn serialize_newtype_variant<T: ?Sized>( + fn serialize_newtype_variant<T>( self, _name: &'static str, _idx: u32, @@ -408,7 +408,7 @@ impl ser::Serializer for &mut ExtSerializer { _value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected tuple, received newtype_variant", @@ -423,9 +423,9 @@ impl ser::Serializer for &mut ExtSerializer { } #[cold] - fn serialize_some<T: ?Sized>(self, _value: &T) -> Result<Self::Ok, Self::Error> + fn serialize_some<T>(self, _value: &T) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected tuple, received some", @@ -508,9 +508,9 @@ impl ser::SerializeTuple for &mut ExtSerializer { type Error = Error; #[inline] - fn serialize_element<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_element<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { match self.fields_se { Some(ref mut se) => value.serialize(&mut *se), @@ -677,20 +677,20 @@ impl ser::Serializer for &mut ExtFieldSerializer { } #[cold] - fn serialize_newtype_struct<T: ?Sized>( + fn serialize_newtype_struct<T>( self, _name: &'static str, _value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected i8 and bytes, received newtype_struct", )) } - fn serialize_newtype_variant<T: ?Sized>( + fn serialize_newtype_variant<T>( self, _name: &'static str, _idx: u32, @@ -698,7 +698,7 @@ impl ser::Serializer for &mut ExtFieldSerializer { _value: &T, ) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected i8 and bytes, received newtype_variant", @@ -713,9 +713,9 @@ impl ser::Serializer for &mut ExtFieldSerializer { } #[cold] - fn serialize_some<T: ?Sized>(self, _value: &T) -> Result<Self::Ok, Self::Error> + fn serialize_some<T>(self, _value: &T) -> Result<Self::Ok, Self::Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { Err(<Error as ser::Error>::custom( "expected i8 and bytes, received some", @@ -863,9 +863,9 @@ impl ser::SerializeSeq for SerializeVec { type Error = Error; #[inline] - fn serialize_element<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_element<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { self.vec.push(to_rmpv_named(value)?); Ok(()) @@ -882,9 +882,9 @@ impl ser::SerializeTuple for SerializeVec { type Error = Error; #[inline] - fn serialize_element<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_element<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { ser::SerializeSeq::serialize_element(self, value) } @@ -900,9 +900,9 @@ impl ser::SerializeTupleStruct for SerializeVec { type Error = Error; #[inline] - fn serialize_field<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_field<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { ser::SerializeSeq::serialize_element(self, value) } @@ -918,9 +918,9 @@ impl ser::SerializeTupleVariant for SerializeTupleVariant { type Error = Error; #[inline] - fn serialize_field<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_field<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { self.vec.push(to_rmpv_named(value)?); Ok(()) @@ -940,17 +940,17 @@ impl ser::SerializeMap for DefaultSerializeMap { type Error = Error; #[inline(always)] - fn serialize_key<T: ?Sized>(&mut self, key: &T) -> Result<(), Error> + fn serialize_key<T>(&mut self, key: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { self.next_key = Some(to_rmpv_named(key)?); Ok(()) } - fn serialize_value<T: ?Sized>(&mut self, value: &T) -> Result<(), Error> + fn serialize_value<T>(&mut self, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { // Panic because this indicates a bug in the program rather than an // expected failure. @@ -973,9 +973,9 @@ impl ser::SerializeStruct for DefaultSerializeMap { type Error = Error; #[inline] - fn serialize_field<T: ?Sized>(&mut self, key: &'static str, value: &T) -> Result<(), Error> + fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { self.map.push((to_rmpv_named(key)?, to_rmpv_named(value)?)); Ok(()) @@ -992,9 +992,9 @@ impl ser::SerializeStructVariant for SerializeStructVariant { type Error = Error; #[inline] - fn serialize_field<T: ?Sized>(&mut self, key: &'static str, value: &T) -> Result<(), Error> + fn serialize_field<T>(&mut self, key: &'static str, value: &T) -> Result<(), Error> where - T: ser::Serialize, + T: ?Sized + ser::Serialize, { self.map.push((to_rmpv_named(key)?, to_rmpv_named(value)?)); Ok(()) diff --git a/src/traft/network.rs b/src/traft/network.rs index 08ecc56fd289515e394d0acee06322f3f0a793e8..a8a6a97bebdbdf9653a2ca857f13e12762eb933a 100644 --- a/src/traft/network.rs +++ b/src/traft/network.rs @@ -12,6 +12,7 @@ use crate::traft::error::Error; use crate::traft::RaftId; use crate::traft::Result; use crate::unwrap_ok_or; +#[cfg(debug_assertions)] use crate::util::NoYieldsGuard; use ::raft::prelude as raft; use ::tarantool::fiber;