mirror of
https://git.anonymousland.org/anonymousland/synapse-product.git
synced 2024-09-08 02:43:04 +00:00
Don't regenerate numeric user ID if registration fails.
This causes huge amounts of DB IO if registrations start to fail e.g. because the DB is struggling with IO.
This commit is contained in:
parent
6018bec919
commit
693156aaf4
@ -220,7 +220,7 @@ class RegistrationHandler(BaseHandler):
|
||||
attempts = 0
|
||||
user = None
|
||||
while not user:
|
||||
localpart = yield self._generate_user_id(attempts > 0)
|
||||
localpart = yield self._generate_user_id()
|
||||
user = UserID(localpart, self.hs.hostname)
|
||||
user_id = user.to_string()
|
||||
yield self.check_user_id_not_appservice_exclusive(user_id)
|
||||
@ -379,10 +379,10 @@ class RegistrationHandler(BaseHandler):
|
||||
)
|
||||
|
||||
@defer.inlineCallbacks
|
||||
def _generate_user_id(self, reseed=False):
|
||||
if reseed or self._next_generated_user_id is None:
|
||||
def _generate_user_id(self):
|
||||
if self._next_generated_user_id is None:
|
||||
with (yield self._generate_user_id_linearizer.queue(())):
|
||||
if reseed or self._next_generated_user_id is None:
|
||||
if self._next_generated_user_id is None:
|
||||
self._next_generated_user_id = (
|
||||
yield self.store.find_next_generated_user_id_localpart()
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user