Solr 6.6 Features

Here’s an overview of some of the new features in Solr 6.6, released on June 6, 2017.

Download Solr 6.6 to try these features out and give us feedback!
You can also check out upcoming features of the next Solr release.

This is likely to be the last Solr 6.x release before Solr 7.

The release notes from the Apache Solr Wiki:

Fields and field types

  • Payload support with payload() value source and {!payload_score} and {!payload_check} query parsers
  • Solr support for SimpleTextCodec, via in solrconfig.xml (per-field specification in the schema is not possible)
  • Multi-field support to TermsComponent when requesting terms’ statistics
  • Support for PointFields in Grouping, CollapseQParser, and ExpandComponent.


  • UPLOAD command (Config Set API) for uploading zipped configsets
  • MOVEREPLICA command (Collections API) for moving a replica across nodes
  • LISTALIASES command (Collections API) to return a list of all collection aliases
  • STATUS command (Core Admin API) to emit collection details of each core


  • Basic authentication can be enabled/disabled using bin/solr|bin/solr.cmd
  • ls command to ZkCLI for listing only sub-directories


  • Variance and Standard Deviation aggregators for the JSON Facet API
  • JSON Faceting now supports a query time ‘join’ domain change option

Streaming expressions and evaluators

  • CartesianProductStream, which turns a single tuple with a multi-valued field into N tuples, one for each value in the multi-valued field
  • stats and search Streaming Expressions should now work in non-SolrCloud mode
  • analyze Stream Evaluator to support streaming NLP
  • New Stream Evaluators: Basic math, Date/time, UUID, Correlation, regress, predict, covariance, convolution, normalize
  • New Streaming Expressions: shuffle, echo, eval, timeseries, let, get


  • Solr default/example uses WordDelimiterGraphFilterFactory and SynonymGraphFilterFactory
  • New DataImportHandler ‘atom’ example, replacing broken ‘rss’ example
  • Redone DataImportHandler ‘tika’ example, removing all unused and irrelevant definitions


  • Expose cache statistics using metrics API
  • Improvements to metric reporters and API: support for “regex” parameter in /admin/metrics, “enabled” flag in reporter configurations, correct handling of
    “serviceUrl” in SolrJmxReporter, better handling of service clients for JMX, Ganglia and Graphite reporters


  • Deprecated LatLonType, GeoHashField, SpatialPointVectorFieldType, and SpatialTermQueryPrefixTreeFieldType. Instead, switch to LatLonPointSpatialField or SpatialRecursivePrefixTreeFieldType or RptWithGeometrySpatialField
  • Deprecated PostingsSolrHighlighter. Use UnifiedSolrHighlighter instead.


  • CloudSolrClient can now be initialized using the base URL of a Solr instance instead of ZooKeeper hosts
  • SolrJ: Added SolrParams.toLocalParamsString() and ClientUtils.encodeLocalParamVal


  • New AtomicUpdateProcessor to convert normal update operations to atomic update operations
  • totalTermFreq support to TermsComponent
  • Hide keystore and truststore passwords from /admin/info/* outputs
  • Configurability for thread pool size to recoveryExecutor
  • Introducing sort=childfield(field) asc for searching by {!parent}


  • facet.heatmap is now significantly faster when the docset (base query) matches everything and there are no deleted docs. It is also faster when the docset matches a small fraction of the index or none
  • Reduced heap consumption for filter({!join … score=…})
  • JSON Facet API now uses hyper-log-log++ for determining the number of buckets when merging requests from a multi-shard distributed request
  • Better ZkStateWriter batching
  • Using cache for DistributedQueue in case of single-consumer