dendrite/clientapi/auth/storage/accounts
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
..
postgres bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
sqlite3 bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
interface.go bugfix: Fix a race condition when creating guest accounts (#882) 2020-03-06 18:00:07 +00:00
storage.go Add peer-to-peer support into Dendrite via libp2p and fetch (#880) 2020-03-06 10:23:55 +00:00
storage_wasm.go Add peer-to-peer support into Dendrite via libp2p and fetch (#880) 2020-03-06 10:23:55 +00:00