dendrite/clientapi/auth/storage/accounts/sqlite3
Kegsay c31cb02271
bugfix: Fix a race condition when creating guest accounts (#882)
* bugfix: Fix a race condition when creating guest accounts

It was possible to both select the same next numeric ID and then both
attempt to INSERT this into the table. This would cause a UNIQUE violation
which then presented itself as an error in sqlite because it does not
implement `common.IsUniqueConstraintViolationErr`.

The fix here is NOT to implement `common.IsUniqueConstraintViolationErr`
otherwise the 2 users would get the SAME guest account. Instead, all of
these operations should be done inside a transaction. This is what this
PR does.

* Update postgres

* Typo

* Actually use the txn when creating accounts

* bugfix for database is locked on guest reg
2020-03-06 18:00:07 +00:00
..
account_data_table.go bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
accounts_table.go bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
filter_table.go sqlite: fixes from sytest (#872) 2020-02-20 09:28:03 +00:00
membership_table.go Add peer-to-peer support into Dendrite via libp2p and fetch (#880) 2020-03-06 10:23:55 +00:00
profile_table.go bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
storage.go bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
threepid_table.go Support sqlite in addition to postgres (#869) 2020-02-13 17:27:33 +00:00