@@ -32,14 +32,17 @@ pub enum BlobMultiConfig {
32
32
33
33
impl BlobMultiConfig {
34
34
/// Opens the associated implementation of [BlobMulti].
35
- pub async fn open ( self , deadline : Instant ) -> Result < Arc < dyn BlobMulti > , ExternalError > {
35
+ pub async fn open (
36
+ self ,
37
+ deadline : Instant ,
38
+ ) -> Result < Arc < dyn BlobMulti + Send + Sync > , ExternalError > {
36
39
match self {
37
40
BlobMultiConfig :: File ( config) => FileBlobMulti :: open ( deadline, config)
38
41
. await
39
- . map ( |x| Arc :: new ( x) as Arc < dyn BlobMulti > ) ,
42
+ . map ( |x| Arc :: new ( x) as Arc < dyn BlobMulti + Send + Sync > ) ,
40
43
BlobMultiConfig :: S3 ( config) => S3BlobMulti :: open ( deadline, config)
41
44
. await
42
- . map ( |x| Arc :: new ( x) as Arc < dyn BlobMulti > ) ,
45
+ . map ( |x| Arc :: new ( x) as Arc < dyn BlobMulti + Send + Sync > ) ,
43
46
}
44
47
}
45
48
@@ -100,11 +103,13 @@ pub enum ConsensusConfig {
100
103
101
104
impl ConsensusConfig {
102
105
/// Opens the associated implementation of [Consensus].
103
- pub async fn open ( self , _deadline : Instant ) -> Result < Arc < dyn Consensus > , ExternalError > {
106
+ pub async fn open (
107
+ self ,
108
+ _deadline : Instant ,
109
+ ) -> Result < Arc < dyn Consensus + Send + Sync > , ExternalError > {
104
110
match self {
105
- ConsensusConfig :: Sqlite ( config) => {
106
- SqliteConsensus :: open ( config) . map ( |x| Arc :: new ( x) as Arc < dyn Consensus > )
107
- }
111
+ ConsensusConfig :: Sqlite ( config) => SqliteConsensus :: open ( config)
112
+ . map ( |x| Arc :: new ( x) as Arc < dyn Consensus + Send + Sync > ) ,
108
113
}
109
114
}
110
115
0 commit comments