Skip to content

Add user to the default group in the background

Nicolás Alvarez requested to merge work/background-group-add into master

The 'users' LDAP group has grown to more than 70000 users. This makes OpenLDAP extremely slow to update it. When people sign up, and the website adds the user to the group, sometimes the page takes so long to load that the browser times out. Then the user tries again, and it fails because the confirmation link was already used, and then they email sysadmin to ask for help.

This commit works around the slowness by adding the user to the default group in a background process. This makes the success page return immediately. Hopefully by the time the user tries to use their account somewhere, the group modification will have already finished (it takes about 1m30s).

According to my local testing, if another user tries to register while the group modification is still in progress, the page will still hang until that finishes, but that's already happening anyway so it's not a regression.

Obviously the ultimate solution to this is to get rid of Identity and use MyKDE. But until we finish that, people still have to register on Identity, and this problem keeps happening every day.

An alternative approach would be to create a second LDAP group to put new users in. Adding people to that group would be fast, and we'll have moved out of LDAP before it gets big enough to be a problem. But I don't know if we have any applications (including MyKDE) that rely on 'users'.

Merge request reports