@@ -285,7 +285,7 @@ impl BlobCompactor {
285
285
version,
286
286
states : vec ! [ Default :: default ( ) ; ori_blobs_number] ,
287
287
ori_blob_mgr,
288
- new_blob_mgr : BlobManager :: new ( digester) ,
288
+ new_blob_mgr : BlobManager :: new ( digester, false ) ,
289
289
c2nodes : HashMap :: new ( ) ,
290
290
b2nodes : HashMap :: new ( ) ,
291
291
backend,
@@ -547,7 +547,8 @@ impl BlobCompactor {
547
547
info ! ( "compactor: delete compacted blob {}" , ori_blob_ids[ idx] ) ;
548
548
}
549
549
State :: Rebuild ( cs) => {
550
- let blob_storage = ArtifactStorage :: FileDir ( PathBuf :: from ( dir) ) ;
550
+ let blob_storage =
551
+ ArtifactStorage :: FileDir ( ( PathBuf :: from ( dir) , String :: new ( ) ) ) ;
551
552
let mut blob_ctx = BlobContext :: new (
552
553
String :: from ( "" ) ,
553
554
0 ,
@@ -557,6 +558,7 @@ impl BlobCompactor {
557
558
build_ctx. cipher ,
558
559
Default :: default ( ) ,
559
560
None ,
561
+ false ,
560
562
) ;
561
563
blob_ctx. set_meta_info_enabled ( self . is_v6 ( ) ) ;
562
564
let blob_idx = self . new_blob_mgr . alloc_index ( ) ?;
@@ -609,6 +611,7 @@ impl BlobCompactor {
609
611
PathBuf :: from ( "" ) ,
610
612
Default :: default ( ) ,
611
613
None ,
614
+ None ,
612
615
false ,
613
616
Features :: new ( ) ,
614
617
false ,
@@ -617,7 +620,7 @@ impl BlobCompactor {
617
620
let mut bootstrap_mgr =
618
621
BootstrapManager :: new ( Some ( ArtifactStorage :: SingleFile ( d_bootstrap) ) , None ) ;
619
622
let mut bootstrap_ctx = bootstrap_mgr. create_ctx ( ) ?;
620
- let mut ori_blob_mgr = BlobManager :: new ( rs. meta . get_digester ( ) ) ;
623
+ let mut ori_blob_mgr = BlobManager :: new ( rs. meta . get_digester ( ) , false ) ;
621
624
ori_blob_mgr. extend_from_blob_table ( & build_ctx, rs. superblock . get_blob_infos ( ) ) ?;
622
625
if let Some ( dict) = chunk_dict {
623
626
ori_blob_mgr. set_chunk_dict ( dict) ;
@@ -656,7 +659,9 @@ impl BlobCompactor {
656
659
657
660
Ok ( Some ( BuildOutput :: new (
658
661
& compactor. new_blob_mgr ,
662
+ None ,
659
663
& bootstrap_mgr. bootstrap_storage ,
664
+ & None ,
660
665
) ?) )
661
666
}
662
667
}
@@ -858,6 +863,7 @@ mod tests {
858
863
crypt:: Algorithm :: Aes256Xts ,
859
864
Arc :: new ( cipher_object) ,
860
865
None ,
866
+ false ,
861
867
) ;
862
868
let ori_blob_ids = [ "1" . to_owned ( ) , "2" . to_owned ( ) ] ;
863
869
let backend = Arc :: new ( MockBackend {
@@ -970,7 +976,7 @@ mod tests {
970
976
HashChunkDict :: from_commandline_arg ( path, Arc :: new ( ConfigV2 :: default ( ) ) , & rafs_config)
971
977
. unwrap ( ) ;
972
978
973
- let mut ori_blob_mgr = BlobManager :: new ( digest:: Algorithm :: Sha256 ) ;
979
+ let mut ori_blob_mgr = BlobManager :: new ( digest:: Algorithm :: Sha256 , false ) ;
974
980
ori_blob_mgr. set_chunk_dict ( dict) ;
975
981
976
982
let backend = Arc :: new ( MockBackend {
@@ -1132,6 +1138,7 @@ mod tests {
1132
1138
PathBuf :: from ( tmp_dir. as_path ( ) ) ,
1133
1139
Default :: default ( ) ,
1134
1140
None ,
1141
+ None ,
1135
1142
false ,
1136
1143
Features :: new ( ) ,
1137
1144
false ,
@@ -1149,6 +1156,7 @@ mod tests {
1149
1156
build_ctx. cipher ,
1150
1157
Default :: default ( ) ,
1151
1158
None ,
1159
+ false ,
1152
1160
) ;
1153
1161
let blob_ctx2 = BlobContext :: new (
1154
1162
"blob_id2" . to_owned ( ) ,
@@ -1159,6 +1167,7 @@ mod tests {
1159
1167
build_ctx. cipher ,
1160
1168
Default :: default ( ) ,
1161
1169
None ,
1170
+ false ,
1162
1171
) ;
1163
1172
let blob_ctx3 = BlobContext :: new (
1164
1173
"blob_id3" . to_owned ( ) ,
@@ -1169,6 +1178,7 @@ mod tests {
1169
1178
build_ctx. cipher ,
1170
1179
Default :: default ( ) ,
1171
1180
None ,
1181
+ false ,
1172
1182
) ;
1173
1183
let blob_ctx4 = BlobContext :: new (
1174
1184
"blob_id4" . to_owned ( ) ,
@@ -1179,6 +1189,7 @@ mod tests {
1179
1189
build_ctx. cipher ,
1180
1190
Default :: default ( ) ,
1181
1191
None ,
1192
+ false ,
1182
1193
) ;
1183
1194
let blob_ctx5 = BlobContext :: new (
1184
1195
"blob_id5" . to_owned ( ) ,
@@ -1189,6 +1200,7 @@ mod tests {
1189
1200
build_ctx. cipher ,
1190
1201
Default :: default ( ) ,
1191
1202
None ,
1203
+ false ,
1192
1204
) ;
1193
1205
compactor. ori_blob_mgr . add_blob ( blob_ctx1) ;
1194
1206
compactor. ori_blob_mgr . add_blob ( blob_ctx2) ;
@@ -1230,6 +1242,7 @@ mod tests {
1230
1242
PathBuf :: from ( tmp_dir. as_path ( ) ) ,
1231
1243
Default :: default ( ) ,
1232
1244
None ,
1245
+ None ,
1233
1246
false ,
1234
1247
Features :: new ( ) ,
1235
1248
false ,
@@ -1244,6 +1257,7 @@ mod tests {
1244
1257
build_ctx. cipher ,
1245
1258
Default :: default ( ) ,
1246
1259
None ,
1260
+ false ,
1247
1261
) ;
1248
1262
blob_ctx1. compressed_blob_size = 2 ;
1249
1263
let mut blob_ctx2 = BlobContext :: new (
@@ -1255,6 +1269,7 @@ mod tests {
1255
1269
build_ctx. cipher ,
1256
1270
Default :: default ( ) ,
1257
1271
None ,
1272
+ false ,
1258
1273
) ;
1259
1274
blob_ctx2. compressed_blob_size = 0 ;
1260
1275
let blob_ctx3 = BlobContext :: new (
@@ -1266,6 +1281,7 @@ mod tests {
1266
1281
build_ctx. cipher ,
1267
1282
Default :: default ( ) ,
1268
1283
None ,
1284
+ false ,
1269
1285
) ;
1270
1286
let blob_ctx4 = BlobContext :: new (
1271
1287
"blob_id4" . to_owned ( ) ,
@@ -1276,6 +1292,7 @@ mod tests {
1276
1292
build_ctx. cipher ,
1277
1293
Default :: default ( ) ,
1278
1294
None ,
1295
+ false ,
1279
1296
) ;
1280
1297
let blob_ctx5 = BlobContext :: new (
1281
1298
"blob_id5" . to_owned ( ) ,
@@ -1286,6 +1303,7 @@ mod tests {
1286
1303
build_ctx. cipher ,
1287
1304
Default :: default ( ) ,
1288
1305
None ,
1306
+ false ,
1289
1307
) ;
1290
1308
compactor. ori_blob_mgr . add_blob ( blob_ctx1) ;
1291
1309
compactor. ori_blob_mgr . add_blob ( blob_ctx2) ;
0 commit comments