@@ -396,31 +396,33 @@ class GetAllRunsUseCase {
396396 const [ lhcPeriodId ] = lhcPeriodIds ?? [ ] ;
397397 const { mcReproducibleAsNotBad } = detectorsQc ;
398398 delete detectorsQc . mcReproducibleAsNotBad ;
399- delete detectorsQc . operator ;
400-
401- const qcSummary = await qcFlagSummaryService . getSummary (
402- {
403- dataPassId,
404- simulationPassId,
405- lhcPeriodId,
406- dplDetectorIds : Object . keys ( detectorsQc ) . map ( ( id ) => parseInt ( id . slice ( 1 ) , 10 ) ) ,
407- } ,
408- { mcReproducibleAsNotBad } ,
409- ) ;
410399
411- const runNumbers = Object . entries ( qcSummary )
412- . filter ( ( [ _ , runSummary ] ) => {
413- const mask = Object . entries ( runSummary ) . map ( ( [ dplDetecotrId , { badEffectiveRunCoverage } ] ) => {
414- if ( ! ( `_${ dplDetecotrId } ` in detectorsQc ) ) {
415- return false ;
416- }
417- const { operator : forDetectorOperator , limit } = detectorsQc [ `_${ dplDetecotrId } ` ] . notBadFraction ;
418- return badEffectiveRunCoverageComparison ( badEffectiveRunCoverage , forDetectorOperator , limit ) ;
419- } ) ;
420- return mask . every ( ( valid ) => valid ) ;
421- } )
422- . map ( ( [ runNumber ] ) => runNumber ) ;
423- filteringQueryBuilder . where ( 'runNumber' ) . oneOf ( ...runNumbers ) ;
400+ const dplDetectorIds = Object . keys ( detectorsQc ) . map ( ( id ) => parseInt ( id . slice ( 1 ) , 10 ) ) ;
401+ if ( dplDetectorIds . length > 0 ) {
402+ const qcSummary = await qcFlagSummaryService . getSummary (
403+ {
404+ dataPassId,
405+ simulationPassId,
406+ lhcPeriodId,
407+ dplDetectorIds,
408+ } ,
409+ { mcReproducibleAsNotBad } ,
410+ ) ;
411+
412+ const runNumbers = Object . entries ( qcSummary )
413+ . filter ( ( [ _ , runSummary ] ) => {
414+ const mask = Object . entries ( runSummary ) . map ( ( [ dplDetecotrId , { badEffectiveRunCoverage } ] ) => {
415+ if ( ! ( `_${ dplDetecotrId } ` in detectorsQc ) ) {
416+ return false ;
417+ }
418+ const { operator : forDetectorOperator , limit } = detectorsQc [ `_${ dplDetecotrId } ` ] . notBadFraction ;
419+ return badEffectiveRunCoverageComparison ( badEffectiveRunCoverage , forDetectorOperator , limit ) ;
420+ } ) ;
421+ return mask . every ( ( valid ) => valid ) ;
422+ } )
423+ . map ( ( [ runNumber ] ) => runNumber ) ;
424+ filteringQueryBuilder . where ( 'runNumber' ) . oneOf ( ...runNumbers ) ;
425+ }
424426 }
425427
426428 if ( simulationPassIds ) {
0 commit comments