An Unpleasant Refiner Bug in SharePoint Online

As always, I don’t know where to report issues with Office 365. So here I am carping in a public channel in the hopes that the right person sees it. This also may happen with SharePoint 2013 on premises, but I can’t recall.

Unpleasant SharePoint search refinerWhen I use a refiner that is based on a Lookup column, I’ll often see something like the attached image. As you can see, there are two clients listed: Anchor Glass and 29. Anchor Glass is the title of the item in the Clients list with the ID of 29, but it still doesn’t make sense (especially to those poor users). It’s as if the indexer isn’t smart enough to handle Lookup columns properly – but only some of the time.

This happens on multiple tenants, with different Lookup columns to different lists, but not consistently, or in any pattern I’ve been able to discern. Generally it’s the Title column we’re looking up into. Using a Lookup column into a list is almost always preferable to using Managed Metadata (IMO) because we can store additional data about the values in the list. For instance, in the Clients list above, we have the client contact info, who works with the client, when we started working with them, what the billings are, etc. Managed Metadata is worthless for that.

But the bug.

Has anyone else seen this? Any ideas on how to work around it?

3 Comments

  1. Try to map ows_columnname to a managed property which is set not to be multi value, and make sure it keeps the first cp value, not all. If that fails, set it to multivalue. The image seems like the cp is multi value, but the mp is not, thus it concatenates. Just need to find the right settings is my guess.

    I agree title and id should not be two values though.

    Reply
    • Mikael:

      Yes, I omitted some details. Since you’ll probably be able to tell me what’s going on (I thought about pinging you directly, but it’s more fun to do a blog post, since I’m likely not the only person seeing this), here are some more details…

      The managed property here is RefinableString03 because on Office 365 we don’t get to create our own. I’m mapped the crawled properties ows_Client and Client to the managed property. The Client Site Column is a Lookup column to the Title column in the Clients list. The Site Column is not multi-select. The Client Site Column is used in a bunch of Content Types, any of which may show up in search results. (The page I took the screenshot from is a custom search results page, with a Result Source that limits results to a specific set of subsites based on the path.)

      The refiner is set up with the default settings:

      • Display template: Refinement Item
      • Sort by: Count
      • Sort direction: Descending
      • Maximum number of refiner values: 15

      Any other ideas?

      M.

      Reply

Have a thought or opinion?