@@ -23,8 +23,8 @@ use crate::sync::Arc;
2323use crate :: sync:: Mutex ;
2424use crate :: util:: logger:: Logger ;
2525use crate :: util:: persist:: {
26- KVStore , OUTPUT_SWEEPER_PERSISTENCE_KEY , OUTPUT_SWEEPER_PERSISTENCE_PRIMARY_NAMESPACE ,
27- OUTPUT_SWEEPER_PERSISTENCE_SECONDARY_NAMESPACE ,
26+ KVStore , KVStoreSync , KVStoreSyncWrapper , OUTPUT_SWEEPER_PERSISTENCE_KEY ,
27+ OUTPUT_SWEEPER_PERSISTENCE_PRIMARY_NAMESPACE , OUTPUT_SWEEPER_PERSISTENCE_SECONDARY_NAMESPACE ,
2828} ;
2929use crate :: util:: ser:: { Readable , ReadableArgs , Writeable } ;
3030use crate :: { impl_writeable_tlv_based, log_debug, log_error} ;
@@ -916,11 +916,21 @@ where
916916 D :: Target : ChangeDestinationSourceSync ,
917917 E :: Target : FeeEstimator ,
918918 F :: Target : Filter ,
919- K :: Target : KVStore ,
919+ K :: Target : KVStoreSync ,
920920 L :: Target : Logger ,
921921 O :: Target : OutputSpender ,
922922{
923- sweeper : Arc < OutputSweeper < B , Arc < ChangeDestinationSourceSyncWrapper < D > > , E , F , K , L , O > > ,
923+ sweeper : Arc <
924+ OutputSweeper <
925+ B ,
926+ Arc < ChangeDestinationSourceSyncWrapper < D > > ,
927+ E ,
928+ F ,
929+ Arc < KVStoreSyncWrapper < K > > ,
930+ L ,
931+ O ,
932+ > ,
933+ > ,
924934}
925935
926936impl < B : Deref , D : Deref , E : Deref , F : Deref , K : Deref , L : Deref , O : Deref >
@@ -930,7 +940,7 @@ where
930940 D :: Target : ChangeDestinationSourceSync ,
931941 E :: Target : FeeEstimator ,
932942 F :: Target : Filter ,
933- K :: Target : KVStore ,
943+ K :: Target : KVStoreSync ,
934944 L :: Target : Logger ,
935945 O :: Target : OutputSpender ,
936946{
@@ -942,6 +952,8 @@ where
942952 let change_destination_source =
943953 Arc :: new ( ChangeDestinationSourceSyncWrapper :: new ( change_destination_source) ) ;
944954
955+ let kv_store = Arc :: new ( KVStoreSyncWrapper :: new ( kv_store) ) ;
956+
945957 let sweeper = OutputSweeper :: new (
946958 best_block,
947959 broadcaster,
@@ -1006,7 +1018,7 @@ where
10061018 D :: Target : ChangeDestinationSourceSync ,
10071019 E :: Target : FeeEstimator ,
10081020 F :: Target : Filter + Sync + Send ,
1009- K :: Target : KVStore ,
1021+ K :: Target : KVStoreSync ,
10101022 L :: Target : Logger ,
10111023 O :: Target : OutputSpender ,
10121024{
0 commit comments