From 1c8fa745bc24b5e923d64ee613e2ffefa1d5ac69 Mon Sep 17 00:00:00 2001 From: Brian Simpson Date: Wed, 11 Dec 2013 20:35:48 -0500 Subject: [PATCH] get_campaigns_by_date: Don't lookup transactions if there are none. --- r2/r2/lib/inventory.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/r2/r2/lib/inventory.py b/r2/r2/lib/inventory.py index 9882be926..ed425cf2e 100644 --- a/r2/r2/lib/inventory.py +++ b/r2/r2/lib/inventory.py @@ -111,8 +111,12 @@ def get_campaigns_by_date(srs, start, end, ignore=None): campaigns = PromoCampaign._byID(campaign_ids, data=True, return_dict=False) transaction_ids = {camp.trans_id for camp in campaigns if camp.trans_id != NO_TRANSACTION} - transactions = Bid.query().filter(Bid.transaction.in_(transaction_ids)) - transaction_by_id = {bid.transaction: bid for bid in transactions} + + if transaction_ids: + transactions = Bid.query().filter(Bid.transaction.in_(transaction_ids)) + transaction_by_id = {bid.transaction: bid for bid in transactions} + else: + transaction_by_id = {} ret = {sr.name: defaultdict(list) for sr in srs} for camp in campaigns: