Patrick Perrone has a great article on how to setup Solr in a new instance of Sitecore 8.0+.  It is a full install guide that includes installing Tomcat, installing Solr and updating Sitecore to enable solr as your search provider.  From the guide, everything works like a charm in Sitecore 8.1… except one thing.  The Media Select dialog.

Something's missing :(

Something’s missing 🙁

You’ll notice there’s nothing inside the search results.  That’s not good. A quick glance at the default log file gave no clues as to what was missing.  Opening up the Search.log file, however, gave a bit more information:

13692 14:42:09 INFO Serialized Query – ?q=((_path:(3d6658d8a0bf4e75b3e2d050fabcf4e1) AND _language:(en)) AND (_template:(962b53c4f93b4df99821415c867b8903) OR _template:(f1828a2c7e5d4bbd98ca320474871548) OR _template:(daf085e8602e43a68299038ff171349f) OR _template:(7bb0411f50cd4c21ad8f1fcde7c3affe) OR _template:(e76adbdf87d14fcbba71274f7dbf5670) OR _template:(9867c0b9a7be4d96ad7e4ad18109ed20) OR _template:(4f4a3a3b239f498898e1da3779749cbc) OR _template:(166927339a6145e6b0d44c0c06f8dd3c) OR _template:(777f0c76d71246ea9f40371acda18a1c) OR _template:(0603f16635b8469f8123e8d87bedc171) OR _template:(b60424a5ce064c2e9f49a6d732f55d4b) OR _template:(d56db3aa73734651837e8d3977a0b544) OR _template:(611933acce0c4ddc9683f830232db150) OR _template:(c97ba92380094858bdd5d8be5fccecf7) OR _template:(eb3fb96cd56b4ac997f8f07b24bb9bf7) OR _template:(374d3a99c0984cd28fbcdc2d1ca1c904) OR _template:(2e16714d8406444598b7cd70f658611b) OR _template:(f57fb07d332a4934aa670a629c5396e2) OR _template:(e19a2758f8024fdcb4975ff7b3bac54b) OR _template:(2449f96d620e4e8aa3e0d354f78bbd73) OR _template:(1743421c0d7f48709f7b70e6f0b63308) OR _template:(2a130d0ca2a94443b418917f857bf6c9) OR _template:(cc80011d8eae4bfc84f167ecd0223e9e) OR _template:(3db3a3caa0a94228994bf70c8e99a1ce)))&start=0&rows=20&fl=*,score&fq=_indexname:(sitecore_marketing_asset_index_master)&facet=true&facet.field=calculateddimension_sm&f.calculateddimension_sm.facet.mincount=0&facet.field=_templatename&f._templatename.facet.mincount=0&facet.field=updatedinterval&f.updatedinterval.facet.mincount=0
13692 14:42:09 ERROR Solr Error : [“undefined field: “updatedinterval””] – Query attempted: [((_path:(3d6658d8a0bf4e75b3e2d050fabcf4e1) AND _language:(en)) AND (_template:(962b53c4f93b4df99821415c867b8903) OR _template:(f1828a2c7e5d4bbd98ca320474871548) OR _template:(daf085e8602e43a68299038ff171349f) OR _template:(7bb0411f50cd4c21ad8f1fcde7c3affe) OR _template:(e76adbdf87d14fcbba71274f7dbf5670) OR _template:(9867c0b9a7be4d96ad7e4ad18109ed20) OR _template:(4f4a3a3b239f498898e1da3779749cbc) OR _template:(166927339a6145e6b0d44c0c06f8dd3c) OR _template:(777f0c76d71246ea9f40371acda18a1c) OR _template:(0603f16635b8469f8123e8d87bedc171) OR _template:(b60424a5ce064c2e9f49a6d732f55d4b) OR _template:(d56db3aa73734651837e8d3977a0b544) OR _template:(611933acce0c4ddc9683f830232db150) OR _template:(c97ba92380094858bdd5d8be5fccecf7) OR _template:(eb3fb96cd56b4ac997f8f07b24bb9bf7) OR _template:(374d3a99c0984cd28fbcdc2d1ca1c904) OR _template:(2e16714d8406444598b7cd70f658611b) OR _template:(f57fb07d332a4934aa670a629c5396e2) OR _template:(e19a2758f8024fdcb4975ff7b3bac54b) OR _template:(2449f96d620e4e8aa3e0d354f78bbd73) OR _template:(1743421c0d7f48709f7b70e6f0b63308) OR _template:(2a130d0ca2a94443b418917f857bf6c9) OR _template:(cc80011d8eae4bfc84f167ecd0223e9e) OR _template:(3db3a3caa0a94228994bf70c8e99a1ce)))]

Well, that definitely makes more sense.  But why is this breaking now?  Turns out, as of 8.1 Update 2, Sitecore has moved their media search over to using the ContentSearch and these changes require the definition of the field “updatedinterval”

Heading into the App_Config\Include folder, I sure enough found a sneaky “Sitecore.Speak.ContentSearch.Solr.config.example” hiding away.  Why was it not named “Sitecore.ContentSearchSpeak.Speak.Solr.config.example” so it showed up with all the other configs? I have no idea.  Either way, when you open this file, you see exactly what you’re looking for:

<?xml version="1.0" encoding="utf-8" ?>
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
  <sitecore>
    <contentSearch>
      <indexConfigurations>
        <defaultSolrIndexConfiguration>
          <virtualFields>
            <processors>
              <add fieldName="updatedinterval"  type="Sitecore.ItemWebApi.VirtualFields.UpdatedIntervalFieldProcessor, Sitecore.Speak.ItemWebApi" />
            </processors>
          </virtualFields>
        </defaultSolrIndexConfiguration>
      </indexConfigurations>
    </contentSearch>
  </sitecore>
</configuration>

Renaming that file to remove the “.example” extension leaves me with something I like.  Results.

All better

All better