Skip to end of metadata
Go to start of metadata

Problem

I want to make a user mention in a page but I cannot find the user I am looking for. I get some other users with similar names but if I keep on typing to narrow down the search I end up with no results at all. I am 100% sure that the user exists, because I have mentioned it before and/or I can see it as an author of pages, comments, etc.

Solution

This problems happens because of two conditions:

  • First, we have a really large number of users. Over 100k at the moment of writing. In this number many elements of their names are repeated (eg, "Smith", or "John")
  • Second, Confluence applies some optimizations that don't go well will such large user number. The process followed by Confluence is
    1. As soon as you type three or four characters (depends on how fast you type) Confluence will make a search request, getting a maximum of 100 results
    2. If you keep typing, Confluence will refine the search by filtering down from that initial set of 100
    3. However, if your desired result was not in the original list, it will not be found.
    4. Which "matching" search results go in to the top 100 is not under the user control (is basically random), other than most recently used ones.


In order to solve the problem you could try to:

  1. Use the most unique elements of the user name or id first in the search. Eg "Smith" would be bad, "rid" would also be bad, but perhaps a user id like "usx" would work. Do remember that we have many users from different nationalities so the names are really varied.
  2. If a first attempt doesn't work, try with different elements of the name and user id to see if any is better. In the end, the best option is any that would yield less than 100 results out of the 100k users, but obviously it is difficult to know which one that is beforehand.
  3. As a very last resource, one could use the advanced Confluence editor (look for the "<>" symbol at the top-right corner of the screen when in edit mode) and add the following code in the right place.

      <ac:link>
        <ri:user ri:username="usv"/>
      </ac:link>



2 Comments

  1. Another interesting things that happens because of this is that a user might be found with less information or more but nothing somewhere in between, e.g. when sharing a page with Susan Dunning she appears in the search until you type the second 'n' of 'Dunning' when her name disappears, and then it reappears as you type the final 'g'. Doesnt' seem to happen when @ mentioning her though

    1. For any search which is "not restrictive enough", eg matching more than the 10 results that fit in the screen, the actual order (which decides which 10 ones show up, which 100 ones are in memory and which ones are left out for the session) is pretty random. As it should be, because there is no good way of ordering the information (alphabetical? activity? ecmwf-first?) which is fast , effective and general enough.

      I would imagine that there must be only a few dozens of installations out there with 100k+ users, so this is normally not an issue for most. Yet another reason why we have to prioritize user database curation. If we can reduce the user db to 30-50k without duplicates (which should be doable) then the situation will be a lot  better.