Nome utente eliminato, ma non si può usare quel nome utente con altri utenti

Ho eliminato un utente con username = “XXX” e vorrei cambiare l’username di un altro utente con lo stesso nome dell’utente eliminato, ma non riesco. Ricevo il messaggio: “L’username deve essere univoco”.

Come posso verificare se un username è già in uso o se è stato completamente eliminato?

Cordiali saluti

Puoi accedere alla tua area di amministrazione → utenti → filtra per nome utente.
In alternativa, puoi utilizzare data explorer.

Sì, ho eliminato l’utente da Admin → Utenti, ma dopo non riesco più a utilizzare lo stesso nome utente che ho rimosso.

Quindi prova a usare data-explorer ed esegui questa richiesta:

SELECT username FROM users WHERE username LIKE '%username%' 

Potrebbe fornire qualche indizio.

Nessun risultato. Ma quando provo a usare il nome utente di un utente eliminato, ricevo il messaggio che il nome utente deve essere univoco.

In quale altra tabella potrebbe trovarsi quel nome utente?

Non lo so. Qual è il nome utente che stai cercando di usare?
Forse stai provando a usare un nome utente riservato, ma immagino che riceveresti un messaggio diverso…
Inoltre, il precedente utente non avrebbe potuto sceglierlo :man_shrugging:t6:

Ecco il codice che verifica se un nome utente è già occupato:

  USERNAME_EXISTS_SQL = <<~SQL
    (SELECT users.id AS id, true as is_user FROM users
    WHERE users.username_lower = :username)

    UNION ALL

    (SELECT groups.id, false as is_user FROM groups
    WHERE lower(groups.name) = :username)
  SQL

Qualsiasi utente eliminato?

modifica: Ho provato a rinominare un utente con lo stesso nome di un gruppo e il sistema ha segnalato che il nome utente deve essere univoco. Forse è questo il tuo problema?

Hai un gruppo con questo nome? @Canapin ha ragione: utenti e gruppi condividono uno spazio dei nomi.

No, non ho alcun gruppo con lo stesso nome.

Un’altra cosa è che nei messaggi privati posso menzionare il nome utente di utenti eliminati.