diff options
Diffstat (limited to 'python')
| -rw-r--r-- | python/process_queue.py | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/python/process_queue.py b/python/process_queue.py index 0e3bf1b6..e088b9aa 100644 --- a/python/process_queue.py +++ b/python/process_queue.py @@ -420,7 +420,10 @@ def generate_csv(l, queue_name='bond_trades'): for trade in l: empty = False csvwriter.writerow(build_line(trade.copy(), queue_name)) - return None if empty else output.getvalue().encode() + if empty: + raise IOError("empty trade queue") + else: + return output.getvalue().encode() def get_filepath(base_dir: pathlib.Path, queue_name: str, fund: str="SERCGMAST") -> pathlib.Path: d = {'bond_trades': 'Mortgages', @@ -495,14 +498,14 @@ if __name__ == "__main__": for trade in list_trades: send_email(trade) for fund in ["BRINKER", "SERCGMAST"]: - buf = generate_csv( - filter(lambda t: t.get("fund", "SERCGMAST") == fund, list_trades), - queue_name) - if buf is not None: + try: + buf = generate_csv( + filter(lambda t: t.get("fund", "SERCGMAST") == fund, list_trades), + queue_name) file_path = write_buffer(buf, DAILY_DIR, queue_name, fund) - else: - file_path = None - if not args.no_upload and file_path: - upload_file(file_path) + if not args.no_upload: + upload_file(file_path) + except IOError: + pass q.delete(queue_name) dawndb.close() |
