zeripath f3fb3c6f56
Open transaction when adding Avatar email-hash pairs to the DB (#12577)
When adding Avatar email-hash pairs we simply want the DB table to
represent a Set. We don't care if the hash-pair is already present,
so we just simply Insert and ignore the error.

Unfortunately this seems to cause some DBs to log the duplicate
insert to their logs - looking like a bug a in Gitea.

Now, there is no standard way in SQL to say Insert but if there's
an error ignore it. MySQL has INSERT IGNORE, PostgreSQL >= 9.5 has
INSERT ... ON CONFLICT DO NOTHING, but I do not believe that SQLite
or MSSQL have variants.

This PR places the insert in a transaction which we are happy to fail
if there is an error - hopefully this will stop the unnecessary
logging.

Signed-off-by: Andrew Thornton <art27@cantab.net>

Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2020-08-24 18:39:18 -04:00
..
2020-08-16 23:07:38 -04:00
2020-06-15 16:46:01 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-24 11:48:15 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-08-16 23:07:38 -04:00
2020-07-17 18:15:12 +03:00
2020-07-17 18:15:12 +03:00
2020-08-16 23:07:38 -04:00