From 2904a2b4b5c96b667991b5fb3fa37f7836726d2f Mon Sep 17 00:00:00 2001
From: Chad Hanna <chad.hanna@ligo.org>
Date: Thu, 6 Sep 2018 12:18:46 -0400
Subject: [PATCH] gstlal_inspiral_coinc_extractor: make gracedb uploads work
 again

---
 gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor b/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
index ec733da05b..830f6e8d31 100755
--- a/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
+++ b/gstlal-inspiral/bin/gstlal_inspiral_coinc_extractor
@@ -125,12 +125,18 @@ for (cid, time, ifos) in cids:
 		coinceventmap.append(row)
 	
 	# sngl inspiral table
-	sngl = lsctables.New(lsctables.SnglInspiralTable, columns = ("process_id", "ifo", "end_time", "end_time_ns", "eff_distance", "coa_phase", "mass1", "mass2", "snr", "chisq", "chisq_dof", "bank_chisq", "bank_chisq_dof", "sigmasq", "spin1x", "spin1y", "spin1z", "spin2x", "spin2y", "spin2z", "event_id"))
+	sngl = lsctables.New(lsctables.SnglInspiralTable)
 	xmldoc.appendChild(sngl)
 	rowfunc = snglrow(db)
 	#FIXME Terrible hack, figure out how to do this correctly
 	query = 'SELECT * FROM sngl_inspiral WHERE event_id IN (%s)' % ",".join(['"%s"' % str(i) for i in snglids])
 	for val in db.cursor().execute(query):
-		sngl.append(rowfunc(val))
+		thisrow = rowfunc(val)
+		fullrow = lsctables.New(lsctables.SnglInspiralTable)
+		for col in fullrow.validcolumns:
+			setattr(fullrow, col, None)
+		for attr in ("process_id", "ifo", "end_time", "end_time_ns", "eff_distance", "coa_phase", "mass1", "mass2", "snr", "chisq", "chisq_dof", "bank_chisq", "bank_chisq_dof", "sigmasq", "spin1x", "spin1y", "spin1z", "spin2x", "spin2y", "spin2z", "event_id"):
+			setattr(fullrow, attr, getattr(thisrow, attr))
+		sngl.append(fullrow)
 
 	utils.write_filename(xmldocmain, '%s-LLOID-%d-0.xml.gz' % (ifos.replace(",",""), time), gz=True, verbose=True)
-- 
GitLab