Here is extra information that might help clarify the delay - it shows the query above taking over 30 seconds:
10/16/2019 8:45:05 PM About to execute query: SELECT CampaignName, Clicks, Cost, Conversions, CostPerConversion, CampaignStatus FROM CAMPAIGN_PERFORMANCE_REPORT WHERE Cost > 0 and CampaignName CONTAINS 'Richmond' DURING THIS_MONTH
10/16/2019 8:45:06 PM Query executed: SELECT CampaignName, Clicks, Cost, Conversions, CostPerConversion, CampaignStatus FROM CAMPAIGN_PERFORMANCE_REPORT WHERE Cost > 0 and CampaignName CONTAINS 'Richmond' DURING THIS_MONTH
10/16/2019 8:45:06 PM Campaign Richmond Generic (Arc)
10/16/2019 8:45:06 PM Campaign enabled
10/16/2019 8:45:06 PM Campaign Richmond Competitive (Arc)
10/16/2019 8:45:06 PM Campaign enabled
10/16/2019 8:45:06 PM Campaign Richmond Master (Arc)
10/16/2019 8:45:06 PM Campaign enabled
10/16/2019 8:45:06 PM [21, 8]
10/16/2019 8:45:07 PM About to execute query: SELECT CampaignName, Clicks, Cost, Conversions, CostPerConversion, CampaignStatus FROM CAMPAIGN_PERFORMANCE_REPORT WHERE Cost > 0 and CampaignName CONTAINS 'San Diego' DURING THIS_MONTH
10/16/2019 8:45:39 PM Query executed: SELECT CampaignName, Clicks, Cost, Conversions, CostPerConversion, CampaignStatus FROM CAMPAIGN_PERFORMANCE_REPORT WHERE Cost > 0 and CampaignName CONTAINS 'San Diego' DURING THIS_MONTH
10/16/2019 8:45:39 PM Campaign San Diego Generic (Arc)