summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCecylia Bocovich <cohosh@torproject.org>2020-01-31 17:15:56 -0500
committerCecylia Bocovich <cohosh@torproject.org>2020-02-07 19:12:31 -0500
commitc2930fe339d0be0deceb4120e771bc4f24f28770 (patch)
treea594c733632e91c4b2b09a0d17b97b624acdcba8
parent3dfc2fdbaa3f8467d8c49977b08256f12149daf4 (diff)
Remove completed gettor requests from database
This will remove gettor requests from the requests database when they are completed (rather than changing the status to 'SENT'). There's no need to keep this information around, and we don't want to store hashed email addresses as identifiers long term.
-rw-r--r--gettor/services/email/sendmail.py10
-rw-r--r--gettor/utils/db.py9
2 files changed, 8 insertions, 11 deletions
diff --git a/gettor/services/email/sendmail.py b/gettor/services/email/sendmail.py
index 8d895d7..3f4cfed 100644
--- a/gettor/services/email/sendmail.py
+++ b/gettor/services/email/sendmail.py
@@ -191,9 +191,8 @@ class Sendmail(object):
service="email"
)
- yield self.conn.update_request(
- id=id, hid=hid.hexdigest(), status="SENT",
- service="email", date=date
+ yield self.conn.remove_request(
+ id=id, service="email", date=date
)
except SMTPError as e:
@@ -245,9 +244,8 @@ class Sendmail(object):
service="email"
)
- yield self.conn.update_request(
- id=id, hid=hid.hexdigest(), status="SENT",
- service="email", date=date
+ yield self.conn.remove_request(
+ id=id, service="email", date=date
)
except SMTPError as e:
diff --git a/gettor/utils/db.py b/gettor/utils/db.py
index 1ccdf8e..0ca11aa 100644
--- a/gettor/utils/db.py
+++ b/gettor/utils/db.py
@@ -72,15 +72,14 @@ class SQLite3(object):
query, (id, service)
).addCallback(self.query_callback).addErrback(self.query_errback)
- def update_request(self, id, hid, status, service, date):
+ def remove_request(self, id, service, date):
"""
- Update request record in the database
+ Removes completed request record from the database
"""
- query = "UPDATE requests SET id=?, status=? WHERE id=? AND "\
- "service=? AND date=?"
+ query = "DELETE FROM requests WHERE id=? AND service=? AND date=?"
return self.dbpool.runQuery(
- query, (hid, status, id, service, date)
+ query, (id, service, date)
).addCallback(self.query_callback).addErrback(self.query_errback)
def update_stats(self, command, service, platform=None, language='en'):