@@ -60,7 +60,6 @@ use nexus_types::internal_api::background::InstanceReincarnationStatus;
6060use nexus_types:: internal_api:: background:: InstanceUpdaterStatus ;
6161use nexus_types:: internal_api:: background:: InventoryLoadStatus ;
6262use nexus_types:: internal_api:: background:: LookupRegionPortStatus ;
63- use nexus_types:: internal_api:: background:: OrphanedSitreps ;
6463use nexus_types:: internal_api:: background:: ReadOnlyRegionReplacementStartStatus ;
6564use nexus_types:: internal_api:: background:: RegionReplacementDriverStatus ;
6665use nexus_types:: internal_api:: background:: RegionReplacementStatus ;
@@ -3148,72 +3147,38 @@ fn print_task_fm_sitrep_loader(details: &serde_json::Value) {
31483147}
31493148
31503149fn print_task_fm_sitrep_gc ( details : & serde_json:: Value ) {
3151- let SitrepGcStatus { versions_scanned, orphaned_sitreps, errors } =
3152- match serde_json:: from_value :: < SitrepGcStatus > ( details. clone ( ) ) {
3153- Err ( error) => {
3154- eprintln ! (
3155- "warning: failed to interpret task details: {:?}: {:?}" ,
3156- error, details
3157- ) ;
3158- return ;
3159- }
3160- Ok ( status) => status,
3161- } ;
3150+ let SitrepGcStatus {
3151+ orphaned_sitreps_found,
3152+ orphaned_sitreps_deleted,
3153+ errors,
3154+ } = match serde_json:: from_value :: < SitrepGcStatus > ( details. clone ( ) ) {
3155+ Err ( error) => {
3156+ eprintln ! (
3157+ "warning: failed to interpret task details: {:?}: {:?}" ,
3158+ error, details
3159+ ) ;
3160+ return ;
3161+ }
3162+ Ok ( status) => status,
3163+ } ;
31623164
3163- pub const TOTAL_VERSIONS_SCANNED : & str = "total versions scanned:" ;
3164- pub const VERSIONS_WITH_ORPHANS : & str = "versions with orphans:" ;
3165- pub const ORPHANS_FOUND : & str = "total orphaned sitreps found:" ;
3166- pub const ORPHANS_DELETED : & str = "total orphaned sitreps deleted:" ;
3165+ pub const ORPHANS_FOUND : & str = "orphaned sitreps found:" ;
3166+ pub const ORPHANS_DELETED : & str = "orphaned sitreps deleted:" ;
31673167 pub const ERRORS : & str = "errors:" ;
3168- pub const WIDTH : usize = const_max_len ( & [
3169- TOTAL_VERSIONS_SCANNED ,
3170- VERSIONS_WITH_ORPHANS ,
3171- ERRORS ,
3172- ORPHANS_FOUND ,
3173- ORPHANS_DELETED ,
3174- ] ) + 1 ;
3168+ pub const WIDTH : usize =
3169+ const_max_len ( & [ ERRORS , ORPHANS_FOUND , ORPHANS_DELETED ] ) + 1 ;
31753170 pub const NUM_WIDTH : usize = 4 ;
3176-
3177- #[ derive( tabled:: Tabled ) ]
3178- struct OrphanedSitrepsRow {
3179- version : u32 ,
3180- found : usize ,
3181- deleted : usize ,
3182- }
3183- let mut total_found = 0 ;
3184- let mut total_deleted = 0 ;
3185- let rows: Vec < _ > = orphaned_sitreps
3186- . iter ( )
3187- . map ( |( & version, & OrphanedSitreps { found, deleted } ) | {
3188- total_found += found;
3189- total_deleted += deleted;
3190- OrphanedSitrepsRow { version, found, deleted }
3191- } )
3192- . collect ( ) ;
3193-
31943171 if !errors. is_empty ( ) {
31953172 println ! ( "{ERRICON} {ERRORS:<WIDTH$}{:>NUM_WIDTH$}" , errors. len( ) ) ;
31963173 for error in errors {
31973174 println ! ( " > {error}" )
31983175 }
31993176 }
3177+
3178+ println ! ( " {ORPHANS_FOUND:<WIDTH$}{orphaned_sitreps_found:>NUM_WIDTH$}" ) ;
32003179 println ! (
3201- " {TOTAL_VERSIONS_SCANNED:<WIDTH$}{versions_scanned:>NUM_WIDTH$}"
3202- ) ;
3203- println ! (
3204- " {VERSIONS_WITH_ORPHANS:<WIDTH$}{:>NUM_WIDTH$}" ,
3205- orphaned_sitreps. len( )
3180+ " {ORPHANS_DELETED:<WIDTH$}{orphaned_sitreps_deleted:>NUM_WIDTH$}"
32063181 ) ;
3207- println ! ( " {ORPHANS_FOUND:<WIDTH$}{total_found:>NUM_WIDTH$}" ) ;
3208- println ! ( " {ORPHANS_DELETED:<WIDTH$}{total_deleted:>NUM_WIDTH$}" ) ;
3209-
3210- // Don't print the table listing the number of GC'd sitreps per version
3211- // if it's empty, 'cause it looks kinda weird.
3212- if !rows. is_empty ( ) {
3213- let mut table = tabled:: Table :: new ( rows) ;
3214- bgtask_apply_kv_style ( & mut table) ;
3215- println ! ( "{table}" ) ;
3216- }
32173182}
32183183
32193184const ERRICON : & str = "/!\\ " ;
0 commit comments