none
FAST 2010 Scope w/ Managed Property: Property doesn't exist or is used in a manner inconsistent with schema settings. RRS feed

  • Question

  • I have a scope that works great in SharePoint Enterprise search.  The scope requires a multi-value managed metadata field = a specific value.  I recently switched our farm default search to FAST 2010 for SharePoint, and when I setup the same scope, I get the following error on the results page: 
    Property doesn't exist or is used in a manner inconsistent with schema settings.
    I read that for fast scopes that use managed properties, you must add the managed property through the FAST Search Administration page - which I have done.  I also read that managed properties should be all lower case - which I have done.  Still I get the above error.  My last thought is to run a full crawl after adding the managed property to FAST - which I am doing now; crawl is still going.  
    Is there anything else I am missing?
    FAST layout:
    Query SSA content sources point at sps3 content.
    Content SSA content sources point at http content.
    Scopes are defined in Query SSA.
    Thanks for any help!!
    Wednesday, September 14, 2011 2:18 PM

Answers

  • The problem is most likely due to that the property Queryable is set to false. From the documentation (http://technet.microsoft.com/en-us/library/ff393811.aspx):

    ---------------

    This Boolean value specifies whether or not the managed property is directly searchable on its own (and not only as part of a full text index).

    If not set, it can only be searched when included in a full text index.

    The content must be recrawled/re-fed again for this change to take effect.

    ---------------

    Set it to true with:

    $pt = Get-FASTSearchMetadataManagedProperty -name producttag
    Set-FASTSearchMetadataManagedProperty -ManagedProperty $pt -Queryable 1
    

    And make sure to recrawl the relevant content.

     


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    • Marked as answer by sjb_dev Friday, September 16, 2011 6:25 PM
    Friday, September 16, 2011 2:42 PM
  • When you changed the Queryable property, you changed the underlying index schema. For an item to correctly reflect this new schema, it will have to be recrawled. As your search scope only works for the new index schema, the more items you recrawl the better. If you can afford it (time, performance, strain on source system) go with a full crawl. If you have to settle with an incremental crawl, your search scope won't show 100% correct results until all relevant content items (those with producttag:RFP) have been recrawled. This might take a very long time depending on the type of content in your content source, and the incremental crawl schedule you're using.


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    • Marked as answer by sjb_dev Friday, September 16, 2011 6:25 PM
    Friday, September 16, 2011 4:34 PM

All replies

  • Hi,

    Please post your scope definition, i.e. the FQL it contains.

    Note that with FS4SP, recrawling content is not necessary. Search scopes in FS4SP are dynamic and evaluated at query-time.

    In general, it's commonly recommended to stay away from the the GUI when defining search scopes. This is because FS4SP and SP scopes work a little differently, and the Query SSA (a SP search service application) was really built around the original SP scope functionality. Use the cmdlets Get-SPEnterpriseSearchQueryScope and Set-SPEnterpriseSearchQueryScope instead.

    Regards,

    Marcus

     

     


     

     


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    Thursday, September 15, 2011 5:24 AM
  • PS Z:\> $scope = Get-SPEnterpriseSearchQueryScope -SearchApplication "FAST Query
     Service Application" "Proposals"
    PS Z:\> $scope.Filter
    producttag:RFP
    PS Z:\> $scope.CompilationState
    Empty
    PS Z:\> $scope.Count
    0
    PS Z:\> $scope.Filter
    producttag:RFP
    PS Z:\> $scope.Rules
    PS Z:\>
    Thursday, September 15, 2011 1:59 PM
  • Hi,

    I agree with Marcus about using PowerShell to create the scopes (no surprise there). Try and set the filter like this:

    $scope = Get-SPEnterpriseSearchQueryScope -SearchApplication "FAST Query Service Application" "Proposals"
    $scope.Filter = 'producttag:"RFP"'
    $scope.Update()
    
    


    Using single quotes around the expression and double around the string value. And wait for the scope compilation to kick in or trigger it manually.

    If you want to use KQL syntax for scopes, make sure you follow the 9 steps outlines at "Make FAST Search Server 2010 for SharePoint properties available for use in scopes"  for how to make your properties available for scope use via the admin ui.

    Regards,
    Mikael Svenson 


    Search Enthusiast - SharePoint MVP/WCF4/ASP.Net4
    http://techmikael.blogspot.com/
    Thursday, September 15, 2011 6:47 PM
  • Thanks for the response.  I've updated the filter and will report back on findings.

    In the meantime, is there anyway in FAST shell to see how many items are found for a specific scope?  As documented, the Query SSA only reports empty for scopes.

    Thursday, September 15, 2011 7:24 PM
  • You'll have to evaluate the scope query to see the item count. You can execute a search from the command-line using e.g. http://gallery.technet.microsoft.com/scriptcenter/7428214f-f33b-4eec-ad13-53b2ab85529d which shows you the count.


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    Thursday, September 15, 2011 7:29 PM
  • Hi,

    Scopes with FAST will not show a count as they are not evaluated/compiled the same way as the oob scopes. Scopes with FAST are essentially filters appended to your query, much the same way as if you click a refiner.

    If you download the FAST Search for SharePoint 2010 Query Logger from fs4splogger.codeplex.com, and install that on your FAST QR server, you can monitor the actual fql of each query entering the system, and you will see how scopes or site/doc promotions are written into the query.

    That said, FAST scopes can be much more powerful compared to kql scopes, as you have the full range of fql operators at your disposal. You can for example use scopes to boost certain items (change the relevance sorting), not just limit what is shown.

    Regards,
    Mikael Svenson 


    Search Enthusiast - SharePoint MVP/WCF4/ASP.Net4
    http://techmikael.blogspot.com/
    Thursday, September 15, 2011 7:29 PM
  • Thank you both for the wealth of information here.  I'll look into evaluating the scope and also the query logger from codeplex.  I just checked and am still getting the error above when trying to use the Proposals scope.

    Here is the Filter:

    PS Z:\> $scope.Filter

    producttag:"RFP"

    PS Z:\>

    Thursday, September 15, 2011 8:51 PM
  • Hi,

    Are you sure you created and mapped the managed property the correct place?

    If you execute "Get-FASTSearchMetadataManagedProperty producttag" on your FAST server, do you get it back?

    If not you probably added it the wrong place. Managed properties are vie the UI set up from:

    Central Admin -> Service Applications -> FAST Query SSA -> FAST Search Administration (left column at 3rd from the top) -> Managed properties.

    Or you can use PowerShell cmdlets to create them and map crawled props to them.

    Regards,
    Mikael Svenson


    Search Enthusiast - SharePoint MVP/WCF4/ASP.Net4
    http://techmikael.blogspot.com/
    Friday, September 16, 2011 6:42 AM
  • PS C:\FASTSearch\bin> Get-FASTSearchMetadataManagedProperty producttag
    Name                   : producttag
    Description            :
    Type                   : Text
    Queryable              : False
    StemmingEnabled        : False
    RefinementEnabled      : False
    MergeCrawledProperties : True
    SubstringEnabled       : False
    DeleteDisallowed       : False
    MappingDisallowed      : False
    MaxIndexSize           : 1024
    MaxResultSize          : 64
    DecimalPlaces          : 3
    SortableType           : SortableDisabled
    SummaryType            : Static
    PS C:\FASTSearch\bin>
    Friday, September 16, 2011 2:25 PM
  • The problem is most likely due to that the property Queryable is set to false. From the documentation (http://technet.microsoft.com/en-us/library/ff393811.aspx):

    ---------------

    This Boolean value specifies whether or not the managed property is directly searchable on its own (and not only as part of a full text index).

    If not set, it can only be searched when included in a full text index.

    The content must be recrawled/re-fed again for this change to take effect.

    ---------------

    Set it to true with:

    $pt = Get-FASTSearchMetadataManagedProperty -name producttag
    Set-FASTSearchMetadataManagedProperty -ManagedProperty $pt -Queryable 1
    

    And make sure to recrawl the relevant content.

     


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    • Marked as answer by sjb_dev Friday, September 16, 2011 6:25 PM
    Friday, September 16, 2011 2:42 PM
  • just to clarify, do i need to do a full or incremental crawl?
    Friday, September 16, 2011 3:35 PM
  • When you changed the Queryable property, you changed the underlying index schema. For an item to correctly reflect this new schema, it will have to be recrawled. As your search scope only works for the new index schema, the more items you recrawl the better. If you can afford it (time, performance, strain on source system) go with a full crawl. If you have to settle with an incremental crawl, your search scope won't show 100% correct results until all relevant content items (those with producttag:RFP) have been recrawled. This might take a very long time depending on the type of content in your content source, and the incremental crawl schedule you're using.


    Marcus Johansson | Search Nerd | comperiosearch.com | linkedin.com/in/marcusjohansson
    • Marked as answer by sjb_dev Friday, September 16, 2011 6:25 PM
    Friday, September 16, 2011 4:34 PM
  • Marcus, that did it!  Thank you so much!  Also, Mikael, thanks for your help!!
    Friday, September 16, 2011 6:25 PM
  • Marcus,


    Hi I have an error with the scope of fast search, and I get error when creating a simple rule, in addition to this rule everywhere recounts not anything, any ideas?

    Thursday, November 3, 2011 3:27 AM
  • Hi Jose Luis,

    It's best practice to post a separate question and not follow up on a solved thread, and could you also include

    1. your error message

    2. information on wheter you created the scope using the UI or in PowerShell

    3. what scope rule you have used, and the scope

    4. If any, which guides did you follow on creating your scope

    This makes it easier to pinpoint what the problem might be :)

    Regards,
    Mikael Svenson 


    Search Enthusiast - SharePoint MVP/WCF4/ASP.Net4
    http://techmikael.blogspot.com/
    Thursday, November 3, 2011 7:01 AM