Solr Changelog

New in version 4.10.1

September 29th, 2014
  • Bug Fixes:
  • SOLR-6425: If using the new global hdfs block cache option, you can end up reading corrupt files on file name reuse.
  • SOLR-5814: CoreContainer reports incorrect & missleading path for solrconfig.xml when there are loading problems
  • SOLR-6024: Fix StatsComponent when using docValues="true" multiValued="true"
  • SOLR-6493: Fix fq exclusion via "ex" local param in multivalued stats.field
  • SOLR-6447: bin/solr script needs to pass -DnumShards=1 for boostrapping collection1 when starting Solr in cloud mode.
  • SOLR-6501: Binary Response Writer does not return wildcard fields.
  • Other Changes:
  • SOLR-6503: Removed support for parsing netcdf files in Solr Cell because of license issues. If you need support for this format, download the parser JAR yourself (version 4.2) and add it to contrib/extraction/lib folder: http://www.unidata.ucar.edu/software/thredds/current/netcdf-java/

New in version 4.10.0 (September 4th, 2014)

  • New Features:
  • SOLR-6196: The overseerstatus collection API instruments amILeader and ZK state update calls. (shalin)
  • SOLR-6069: The 'clusterstatus' API should return 'roles' information. (shalin)
  • SOLR-6044: The 'clusterstatus' API should return live_nodes as well. (shalin)
  • SOLR-5768: Add a distrib.singlePass parameter to make EXECUTE_QUERY phase fetch all fields and skip GET_FIELDS. (Gregg Donovan, shalin)
  • SOLR-6183: New spatial BBoxField for indexing rectangles with search support for most predicates. It includes extra score relevancy modes in addition to distance: score=overlapRatio|area|area2D. (David Smiley, Ryan McKinley)
  • SOLR-6232: You can now unload/delete cores that have failed to initialize. (Alan Woodward)
  • SOLR-6258: Added onRollback event handler hook to Data Import Handler (DIH). (ehatcher)
  • SOLR-6263: Add DIH handler name to variable resolver as ${dih.handlerName}. (ehatcher)
  • SOLR-6216: Better faceting for multiple intervals on DV fields. (Tomas Fernandez-Lobbe via Erick Erickson)
  • SOLR-6267: Let user override Interval Faceting key with LocalParams. (Tomas Fernandez_Lobbe via Erick Erickson)
  • SOLR-6020: Auto-generate a unique key in schema-less example if data does not have an id field. The UUIDUpdateProcessor was improved to not require a field name in configuration and generate a UUID into the unique Key field. (Vitaliy Zhovtyuk, hossman, Steve Rowe, Erik Hatcher, shalin)
  • SOLR-6294: SOLR-6437: Remove the restriction of adding json by only wrapping it in an array in a new path /update/json/docs.(Noble Paul , hossman, Yonik Seeley, Steve Rowe)
  • SOLR-6302: UpdateRequestHandlers are registered implicitly /update , /update/json, /update/csv , /update/json/docs. (Noble Paul)
  • SOLR-6318: New "terms" QParser for efficiently filtering documents by a list of values. For many values, it's more appropriate than a boolean query. (David Smiley)
  • SOLR-6283: Add support for Interval Faceting in SolrJ. (Tomás Fernández Löbbe)
  • SOLR-6304 : JsonLoader should be able to flatten an input JSON to multiple docs. (Noble Paul)
  • SOLR-2894: Distributed query support for facet.pivot. (Dan Cooper, Erik Hatcher, Chris Russell, Andrew Muldowney, Brett Lucey, Mark Miller, hossman)
  • SOLR-5656: Add autoAddReplicas feature for shared file systems. (Mark Miller, Gregory Chanan)
  • SOLR-5244: Exporting Full Sorted Result Sets. (Erik Hatcher, Joel Bernstein)
  • SOLR-3617: bin/solr and bin/solr.cmd scripts for starting, stopping, and running Solr examples. (Timothy Potter)
  • SOLR-6233: Provide basic command line tools for checking Solr status and health. (Timothy Potter)
  • SOLR-2245: Improvements to the MailEntityProcessor:
  • Support for server-side date filtering if using GMail; requires new dependency on the Sun Gmail Java mail extensions
  • Support for using the last_index_time from the previous run as the value for the fetchMailsSince filter. (Peter Sturge, Timothy Potter)
  • Bug Fixes:
  • SOLR-6095 : SolrCloud cluster can end up without an overseer with overseer roles (Noble Paul, Shalin Mangar)(Anand Sengamalai via shalin)
  • SOLR-6189: Avoid publishing the state as down if the node is not live when determining if a replica should be in leader-initiated recovery. (Timothy Potter)
  • SOLR-6197: The MIGRATE collection API doesn't work when legacyCloud=false is set in cluster properties. (shalin)
  • SOLR-6206: The migrate collection API fails on retry if temp collection already exists. (shalin)
  • SOLR-6072: The 'deletereplica' API should remove the data and instance directory by default. (shalin)
  • SOLR-6211: TrieDateField doesn't default to omitNorms=true. (Michael Ryan, Steve Rowe)
  • SOLR-6159: A ZooKeeper session expiry during setup can keep LeaderElector from joining elections. (Steven Bower, shalin)
  • SOLR-6223: SearchComponents may throw NPE when using shards.tolerant and there is a failure in the 'GET_FIELDS/GET_HIGHLIGHTS/GET_DEBUG' phase. (Tomás Fernández Löbbe via shalin)
  • SOLR-6180: Callers of ManagedIndexSchema mutators should hold the schemaUpdateLock. (Gregory Chanan via Steve Rowe)
  • SOLR-6229: Make SuggestComponent return 400 instead of 500 for bad dictionary selected in request. (Tomás Fernández Löbbe via shalin)
  • SOLR-6235: Leader initiated recovery should use coreNodeName instead of coreName to avoid marking all replicas having common core name as down. (shalin)
  • SOLR-6208: JettySolrRunner QueuedThreadPool's configuration code is never executed. (dweiss via shalin)
  • SOLR-6245: Socket and Connection configuration are ignored in HttpSolrServer when passing in HttpClient. (Patanachai Tangchaisin, shalin)
  • SOLR-6136: ConcurrentUpdateSolrServer includes a Spin Lock. (Brandon Chapman, Timothy Potter)
  • SOLR-6257: More than two "!"-s in a doc ID throws an ArrayIndexOutOfBoundsException when using the composite id router. (Steve Rowe)
  • SOLR-5746: Bugs in solr.xml parsing have been fixed to more correctly deal with the various datatypes of options people can specify, additional error handling of duplicated/unidentified options has also been added. (Maciej Zasada, hossman)
  • SOLR-5847: Fixed data import abort button in admin UI. (ehatcher)
  • SOLR-6264: Distributed commit and optimize are executed serially across all replicas. (Mark Miller, Timothy Potter)
  • SOLR-6163: Correctly decode special characters in managed stopwords and synonym endpoints. (Vitaliy Zhovtyuk, Timo Schmidt via Timothy Potter)
  • SOLR-6336: DistributedQueue can easily create too many ZooKeeper Watches. (Ramkumar Aiyengar via Mark Miller)
  • SOLR-6347: DELETEREPLICA throws a NPE while removing the last Replica in a Custom sharded collection. (Anshum Gupta)
  • SOLR-6062: Fix undesirable edismax query parser effect (introduced in SOLR-2058) in how phrase queries generated from pf, pf2, and pf3 are merged into the main query. (Michael Dodsworth via ehatcher)
  • SOLR-6372: HdfsDirectoryFactory should use supplied Configuration for communicating with secure kerberos. (Gregory Chanan via Mark Miller)
  • SOLR-6284: Fix NPE in OCP when non-existent sliceId is used for a deleteShard request
  • (Ramkumar Aiyengar via Anshum Gupta)
  • SOLR-6380: Added missing context info to log message if IOException occurs in processing tlog
  • (Steven Bower via hossman)
  • SOLR-6383: RegexTransformer returns no results after replaceAll if regex does not match a value. (Alexander Kingson, shalin)
  • SOLR-6387: Add better error messages throughout Solr and supply a work around for Java bug #8047340 to SystemInfoHandler: On Turkish default locale, some JVMs fail to fork on MacOSX, BSD, AIX, and Solaris platforms. (hossman, Uwe Schindler)
  • SOLR-6338: coreRootDirectory requires trailing slash, or SolrCloud cores are created in wrong location. (Primož Skale via Erick Erickson)
  • SOLR-6314: Facet counts duplicated in the response if specified more than once on the request. (Vamsee Yarlagadda, Erick Erickson)
  • SOLR-6378: Fixed example/example-DIH/ issues with "tika" and "solr" configurations, and tidied up README.txt
  • (Daniel Shchyokin via ehatcher)
  • SOLR-6393: TransactionLog replay performance on HDFS is very poor. (Mark Miller)
  • SOLR-6268: HdfsUpdateLog has a race condition that can expose a closed HDFS FileSystem instance and should close it's FileSystem instance if either inherited close method is called. (Mark Miller)
  • SOLR-6089: When using the HDFS block cache, when a file is deleted, it's underlying data entries in the block cache are not removed, which is a problem with the global block cache option. (Mark Miller, Patrick Hunt)
  • SOLR-6402: OverseerCollectionProcessor should not exit for ZooKeeper ConnectionLoss. (Jessica Cheng via Mark Miller)
  • SOLR-6405: ZooKeeper calls can easily not be retried enough on ConnectionLoss. (Jessica Cheng, Mark Miller)
  • SOLR-6410: Ensure all Lookup instances are closed via CloseHook. (hossman, Areek Zillur, Ryan Ernst, Dawid Weiss)
  • SOLR-6137: Schemaless concurrency improvements:
  • Fixed an NPE when reloading a managed schema with no dynamic copy fields
  • Moved parsing and schema fields addition to after the distributed phase
  • AddSchemaFieldsUpdateProcessor now uses a fixed schema rather than always retrieving the latest, and holds the schema update lock through the entire schema swap-out process. (Gregory Chanan via Steve Rowe)
  • Optimizations:
  • LUCENE-5803: Solr's schema now uses DelegatingAnalyzerWrapper. This uses less heap for cached TokenStreamComponents because it caches per FieldType not per Field, so indexes with many fields of same type just use one TokenStream per thread. (Shay Banon, Uwe Schindler, Robert Muir)
  • SOLR-6259: Reduce CPU usage by avoiding repeated costly calls to Document.getField inside DocumentBuilder.toDocument for use-cases with large number of fields and copyFields. (Steven Bower via shalin)
  • SOLR-5968: BinaryResponseWriter fetches unnecessary stored fields when only pseudo-fields are requested. (Gregg Donovan via shalin)
  • SOLR-6261: Run ZooKeeper watch event callbacks in parallel to the ZooKeeper event thread. (Ramkumar Aiyengar via Mark Miller)
  • Other Changes:
  • SOLR-6173: Fixed wrong failure message in TestDistributedSearch. (shalin)
  • SOLR-5902: Corecontainer level mbeans are not exposed. (noble)
  • SOLR-6194: Allow access to DataImporter and DIHConfiguration from DataImportHandler. (Aaron LaBella via shalin)
  • SOLR-6170: CoreContainer.preRegisterInZk() and CoreContainer.register() commands are merged into CoreContainer.create(). (Alan Woodward)
  • SOLR-6171: Remove unused SolrCores coreNameToOrig map. (Alan Woodward)
  • SOLR-5596: Set system property zookeeper.forceSync=no for Solr test cases. (shalin)
  • SOLR-2853: Add a unit test for the case when "spellcheck.maxCollationTries=0". (James Dyer)
  • SOLR-6240: Removed unused coreName parameter in ZkStateReader.getReplicaProps. (shalin)
  • SOLR-6241: Harden the HttpPartitionTest. (shalin)
  • SOLR-6228: Fixed bug in TestReplicationHandler.doTestIndexAndConfigReplication. (shalin)
  • SOLR-6120: On Windows, when the war is not extracted, the zkcli.bat script will print a helpful message indicating that the war must be unzipped instead of a java error about a missing class. (shalin, Shawn Heisey)
  • SOLR-6179: Better strategy for handling empty managed data to avoid spurious warning messages in the logs. (Timothy Potter)
  • SOLR-6232: CoreContainer.remove() replaced with CoreContainer.unload(). A call to unload will also close the core.
  • SOLR-3893: DIH should not depend on mail.jar,activation.jar (Timothy Potter, Steve Rowe)
  • SOLR-6252: A couple of small improvements to UnInvertedField class. (Vamsee Yarlagadda, Gregory Chanan, Mark Miller)
  • SOLR-3345: BaseDistributedSearchTestCase should always ignore QTime. (Vamsee Yarlagadda, Benson Margulies via Mark Miller)
  • SOLR-6270: Increased timeouts for MultiThreadedOCPTest. (shalin)
  • SOLR-6274: UpdateShardHandler should log the params used to configure it's HttpClient. (Ramkumar Aiyengar via Mark Miller)
  • SOLR-6194: Opened up "public" access to DataSource, DocBuilder, and EntityProcessorWrapper in DIH. (Aaron LaBella via ehatcher)
  • SOLR-6269: Renamed "rollback" to "error" in DIH internals, including renaming onRollback to onError introduced in SOLR-6258. (ehatcher)
  • SOLR-3622: When using DIH in SolrCloud-mode, rollback will no longer be called when an error occurs. (ehatcher)
  • SOLR-6231: Increased timeouts and hardened the RollingRestartTest. (Noble Paul, shalin)
  • SOLR-6290: Harden and speed up CollectionsAPIAsyncDistributedZkTest. (Mark Miller, shalin)
  • SOLR-6281: Made PostingsSolrHighlighter more configurable via subclass extension. (David Smiley)
  • SOLR-6309: Increase timeouts for AsyncMigrateRouteKeyTest. (shalin)
  • SOLR-2168: Added support for facet.missing in /browse field and pivot faceting. (ehatcher)
  • SOLR-4702: Added support for multiple spellcheck collations to /browse UI. (ehatcher)
  • SOLR-5664: Added support for multi-valued field highlighting in /browse UI. (ehatcher)
  • SOLR-6313: Improve SolrCloud cloud-dev scripts. (Mark Miller, Vamsee Yarlagadda)
  • SOLR-6360: Remove bogus "Content-Charset" header in HttpSolrServer. (Michael Ryan, Uwe Schindler)
  • SOLR-6362: Fix bug in TestSqlEntityProcessorDelta. (James Dyer)
  • SOLR-6388: Force upgrade of Apache POI dependency in Solr Cell to version 3.10.1 to fix CVE-2014-3529 and CVE-2014-3574. (Uwe Schindler)
  • SOLR-6391: Improve message for CREATECOLLECTION failure due to missing numShards. (Anshum Gupta)

New in version 4.9.0 (June 26th, 2014)

  • Versions of Major Components:
  • Apache Tika 1.5
  • Carrot2 3.9.0
  • Velocity 1.7 and Velocity Tools 2.0
  • Apache UIMA 2.3.1
  • Apache ZooKeeper 3.4.6
  • New Features:
  • SOLR-5999: Add checkIntegrityAtMerge support to solrconfig.xml.
  • (Varun Thacker via Ryan Ernst)
  • SOLR-6043: Add ability to set http headers in solr response
  • (Tomás Fernández Löbbe via Ryan Ernst)
  • SOLR-5973: Pluggable Ranking Collectors and Merge Strategies
  • (Joel Bernstein)
  • SOLR-6108: Add support for 'addreplica' Collection API in SolrJ.
  • (shalin)
  • SOLR-5468: Allow a client application to request the minium achieved replication factor for an update request (single or batch) by sending an optional parameter "min_rf".
  • (Timothy Potter)
  • SOLR-6088: Add query re-ranking with the ReRankingQParserPlugin
  • (Joel Bernstein)
  • SOLR-5285: Added a new [child ...] DocTransformer for optionally including Block-Join decendent documents inline in the results of a search. This works independent of whether the search itself is a block-join related query and is supported by he xml, json, and javabin response formats.
  • (Varun Thacker via hossman)
  • SOLR-6150: Add new AnalyticsQuery to support pluggable analytics
  • (Joel Bernstein)
  • SOLR-6125: Allow SolrIndexWriter to close without waiting for merges
  • (Christine Poerschke via Alan Woodward)
  • SOLR-6064: DebugComponent track output should be returned as a JSON object rather than a list
  • (Christine Poerschke, Alan Woodward)
  • Bug Fixes:
  • SOLR-6002: Fix a couple of ugly issues around SolrIndexWriter close and rollback as well as how SolrIndexWriter manages it's ref counted directory instance.
  • (Mark Miller, Gregory Chanan)
  • SOLR-6015: Better way to handle managed synonyms when ignoreCase=true
  • (Timothy Potter)
  • SOLR-6104: The 'addreplica' Collection API does not support 'async' parameter.
  • (shalin)
  • SOLR-6101: Shard splitting doesn't work when legacyCloud=false is set in cluster properties.
  • (shalin)
  • SOLR-6111: The 'deleteshard' collection API should be able to delete a shard in 'construction' state.
  • (shalin)
  • SOLR-6118: 'expand.sort' didn't support function queries.
  • (David Smiley)
  • SOLR-6120: zkcli.sh should expand solr.war automatically instead of throwing ClassNotFoundException.
  • (sebastian badea, shalin)
  • SOLR-6149: Specifying the query value without any index value does not work in Analysis browser.
  • (Aman Tandon, shalin)
  • SOLR-6145: Fix Schema API optimistic concurrency by moving it out of ManagedIndexSchema.add(Copy)Fields() into the consumers of those methods: CopyFieldCollectionResource, FieldCollectionResource, FieldResource, and AddSchemaFieldsUpdateProcessorFactory.
  • (Gregory Chanan, Alexey Serba, Steve Rowe)
  • SOLR-6146: Incorrect configuration such as wrong chroot in zk server address can cause CloudSolrServer to leak resources.
  • (Jessica Cheng, Varun Thacker, shalin)
  • SOLR-6158: Relative configSetBase directories were resolved relative to the container CWD, rather than solr.home.
  • (Simon Endele, Alan Woodward)
  • SOLR-5426: Fixed a bug in ReverseWildCardFilter that could cause InvalidTokenOffsetsException when highlighting.
  • (Uwe Schindler, Arun Kumar, via hossman)
  • SOLR-6175: DebugComponent throws NPE on shard exceptions when using shards.tolerant.
  • (Tomás Fernández Löbbe via shalin)
  • SOLR-6129: DateFormatTransformer doesn't resolve dateTimeFormat.
  • (Aaron LaBella via shalin)
  • SOLR-6164: Copy Fields Schema additions are not distributed to other nodes.
  • (Gregory Chanan via Steve Rowe)
  • SOLR-6160: An error was sometimes possible if a distributed search included grouping with group.facet, faceting on facet.field and either facet.range or facet.query.
  • (David Smiley)
  • SOLR-6182: Data stored by the RestManager could not be reloaded after core restart, causing the core to fail to load; cast the data loaded from storage to the correct data type.
  • (Timothy Potter)
  • Other Changes:
  • SOLR-5980: AbstractFullDistribZkTestBase#compareResults always returns false for shouldFail.
  • (Mark Miller, Gregory Chanan)
  • SOLR-5987: Add "collection" to UpdateParams.
  • (Mark Miller, Greg Solovyev)
  • SOLR-3862: Add remove" as update option for atomically removing a value from a multivalued field
  • (Jim Musli, Steven Bower, Alaknantha via Erick Erickson)
  • SOLR-5974: Remove ShardDoc.score and use parent's ScoreDoc.score.
  • (Tomás Fernández Löbbe via Ryan Ernst)
  • SOLR-6025: Replace mentions of CommonsHttpSolrServer with HttpSolrServer and StreamingUpdateSolrServer with ConcurrentUpdateSolrServer.
  • (Ahmet Arslan via shalin)
  • SOLR-6013: Fix method visibility of Evaluator, refactor DateFormatEvaluator for extensibility.
  • (Aaron LaBella via shalin)
  • SOLR-6022: Deprecate getAnalyzer() in IndexField and FieldType, and add getIndexAnalyzer().
  • (Ryan Ernst)
  • SOLR-3671: Fix DIHWriter interface usage so users may implement writers that output documents to a location external to Solr (ex. a NoSql db).
  • (Roman Chyla via James Dyer)
  • SOLR-5340: Add support for named snapshots
  • (Varun Thacker via Noble Paul)
  • SOLR-5495: Recovery strategy for leader partitioned from replica case. Hardening recovery scenarios after the leader receives an error trying to forward an update request to a replica.
  • (Timothy Potter)
  • SOLR-6116: Refactor DocRouter.getDocRouter to accept routerName as a String.
  • (shalin)
  • SOLR-6026: REQUESTSTATUS Collection API now also checks for submitted tasks which are yet to begin execution.
  • SOLR-6067: Refactor duplicate Collector code in SolrIndexSearcher
  • (Christine Poerschke via hossman)
  • SOLR-5940: post.jar reports back detailed error in case of error responses.
  • (Sameer Maggon, shalin, Uwe Schindler)
  • SOLR-6161: SolrDispatchFilter should throw java.lang.Error back even if wrapped in another exception.
  • (Miklos Christine via shalin)
  • SOLR-6153: ReplicationHandler backup response format should contain backup name.
  • (Varun Thacker via shalin)
  • SOLR-6169: Remove broken handleAlias action in CoreAdminHandler
  • (Alan Woodward)
  • SOLR-6128: Removed deprecated analysis factories and fieldTypes from the example schema.xml
  • (hossman)
  • Optimizations:
  • SOLR-5681: Make the processing of Collection API calls multi-threaded.
  • (Anshum Gupta, shalin, Noble Paul)
  • Build:
  • SOLR-6006: Separate test and compile scope dependencies in the Solrj and Solr contrib ivy.xml files, so that the derived Maven dependencies get filled out properly in the corresponding POMs.
  • (Steven Scott, Steve Rowe)
  • SOLR-6130: Added com.uwyn:jhighlight dependency to, and removed asm:asm dependency from the extraction contrib - dependencies weren't fully upgraded with the Tika 1.4->1.5 upgrade (SOLR-5763).
  • (Steve Rowe)

New in version 4.8.1 (May 19th, 2014)

  • Bug Fixes:
  • SOLR-5904: ElectionContext can cancel an election when it should not if there was an exception while trying to register as the leader.
  • SOLR-5993: ZkController can warn about shard leader conflict even after the conflict is resolved.
  • SOLR-6017: Fix SimpleQParser to use query analyzer.
  • SOLR_6029: CollapsingQParserPlugin throws ArrayIndexOutOfBoundsException if elevated doc has been deleted from a segment.
  • SOLR-6030: Use System.nanoTime() instead of currentTimeInMills() in LRUCache.warm.
  • SOLR-6037: Fixed incorrect max/sum/stddev for Date fields in StatsComponent.
  • SOLR-6023: FieldAnalysisRequestHandler throws NPE if no parameters are supplied.
  • SOLR-5090: SpellCheckComponent sometimes throws NPE if "spellcheck.alternativeTermCount" is set to zero.
  • SOLR-6039: fixed debug output when no results in response.
  • SOLR-6035: CloudSolrServer directUpdate routing should use getCoreUrl.

New in version 4.8.0 (April 28th, 2014)

  • New Features:
  • SOLR-5130: Implement addReplica Collections API
  • SOLR-5183: JSON updates now support nested child documents using a "_childDocument_" object key.
  • SOLR-5714: You can now use one pool of memory for for the HDFS block cache that all collections share.
  • SOLR-5720: Add ExpandComponent to expand results collapsed by the CollapsingQParserPlugin.
  • SOLR-3177: Enable tagging and excluding filters in StatsComponent via the localParams syntax.
  • SOLR-1604: Wildcards, ORs etc inside Phrase Queries.
  • SOLR-5477: Async execution of OverseerCollectionProcessor(CollectionsAPI) tasks.
  • SOLR-5865: Provide a MiniSolrCloudCluster to enable easier testing.
  • SOLR-5860: Use leaderConflictResolveWait in WaitForState during recovery/startup, improve logging and force refresh cluster state every 15 seconds.
  • SOLR-5749: A new Overseer status collection API exposes overseer queue sizes, timing statistics, success and error counts and last N failures per operation.
  • SOLR-5858: Add a hl.qparser parameter to allow you to define a queryparser for hl.q highlight queries. If no queryparser is defined, Solr will use the overall query's defType.
  • SOLR-4478: Allow cores to use configuration from a configsets directory outside their instance directory.
  • SOLR-5466: A new List collections and cluster status API which clients can use to read collection and shard information instead of reading data directly from ZooKeeper.
  • (Dave Seltzer, Varun Thacker, Vitaliy Zhovtyuk, Erick Erickson, shalin)
  • SOLR-5795: New DocExpirationUpdateProcessorFactory supports computing an expiration date for documents from the "TTL" expression, as well as automatically deleting expired documents on a periodic basis.
  • SOLR-5829: Allow ExpandComponent to accept query and filter query parameters
  • SOLR-5653: Create a RestManager to provide REST API endpoints for reconfigurable plugins.
  • SOLR-5655: Create a stopword filter factory that is (re)configurable, and capable of reporting its configuration, via REST API.
  • SOLR-5654: Create a synonym filter factory that is (re)configurable, and capable of reporting its configuration, via REST API.
  • SOLR-5960: Add support for basic authentication in post.jar tool, e.g.: java -Durl="http://username:password@hostname:8983/solr/update" -jar post.jar sample.xml
  • SOLR-4864: RegexReplaceProcessorFactory should support pattern capture group substitution in replacement string.
  • Bug Fixes:
  • SOLR-5858, SOLR-4812: edismax and dismax query parsers can be used for parsing highlight queries.
  • SOLR-5893: On restarting overseer designate , move itself to front of the queue
  • SOLR-5915: Attempts to specify the parserImpl for solr.PreAnalyzedField fieldtype failed.
  • SOLR-5943: SolrCmdDistributor does not distribute the openSearcher parameter.
  • SOLR-5954: Slower DataImportHandler process caused by not reusing jdbc connections.
  • SOLR-5897: Upgraded to jQuery 1.7.2, Solr was previously using 1.4.3, the file was mistakenly named 1.7.2
  • Optimizations:
  • SOLR-1880: Distributed Search skips GET_FIELDS stage if EXECUTE_QUERY stage gets all fields. Requests with fl=id or fl=id,score are now single-pass.
  • SOLR-5783: Requests to open a new searcher will now reuse the current registered searcher (w/o additional warming) if possible in situations where the underlying index has not changed. This reduces overhead in situations such as deletes that do not modify the index, and/or redundant commits.
  • SOLR-5884: When recovery is cancelled, any call to the leader to wait to see the replica in the right state for recovery should be aborted.
  • Other Changes:
  • SOLR-5909: Upgrade Carrot2 clustering dependency to 3.9.0.
  • SOLR-5764: Fix recently added tests to not use absolute paths to load test-files, use SolrTestCaseJ4.getFile() and getResource() instead; fix morphlines/map-reduce to not duplicate test resources and fix dependencies among them.
  • SOLR-5765: Update to SLF4J 1.7.6.
  • SOLR-5609: If legacy mode is disabled don't let cores create slices/replicas/collections . All operations should be performed through collection API
  • SOLR-5613: Upgrade to commons-codec 1.9 for better BeiderMorseFilter performance.
  • SOLR-5771: Add SolrTestCaseJ4.SuppressSSL annotation to disable SSL (instead of static boolean).
  • SOLR-5799: When registering as the leader, if an existing ephemeral registration exists, wait a short time to see if it goes away.
  • LUCENE-5472: IndexWriter.addDocument will now throw an IllegalArgumentException if a Term to be indexed exceeds IndexWriter.MAX_TERM_LENGTH. To recreate previous behavior of silently ignoring these terms, use LengthFilter in your Analyzer.
  • SOLR-5825: Separate http request creating and execution in SolrJ
  • SOLR-5837: Add hashCode/equals to SolrDocument, SolrInputDocument and SolrInputField for testing purposes.
  • SOLR-5853: The createCollection methods in the test framework now reports result of operation in the returned CollectionAdminResponse
  • SOLR-5838: Relative SolrHome Path Bug At AbstractFullDistribZkTestBase.
  • SOLR-5763: Upgrade to Tika 1.5
  • SOLR-5881: Upgrade ZooKeeper to 3.4.6
  • SOLR-5883: Many tests do not shutdown SolrServer.
  • SOLR-5898: Update to latest Kite Morphlines release: Version 0.12.1.
  • SOLR-5228: Don't require or be inside of -- or that be inside of .
  • SOLR-5903: SolrCore implements Closeable, cut over to using try-with-resources where possible.
  • SOLR-5914: Cleanup and fix Solr's test cleanup code.
  • SOLR-5936: Deprecate non-Trie-based numeric & date field types.
  • SOLR-5934: LBHttpSolrServer exception handling improvement and small test improvements.
  • SOLR-5773: CollapsingQParserPlugin should make elevated documents the group head.
  • SOLR-5937: Modernize the DIH example config sets.

New in version 4.7.2 (April 15th, 2014)

  • Versions of Major Components:
  • Apache Tika 1.4
  • Carrot2 3.8.0
  • Velocity 1.7 and Velocity Tools 2.0
  • Apache UIMA 2.3.1
  • Apache ZooKeeper 3.4.5
  • Bug Fixes:
  • SOLR-5951: Fixed SolrDispatchFilter to throw useful exception on startup if SLF4j logging jars are missing.
  • SOLR-5950: Maven config: make the org.slf4j:slf4j-api dependency transitive (i.e., not optional) in all modules in which it's a dependency, including solrj, except for the WAR, where it will remain optional.

New in version 4.7.1 (April 2nd, 2014)

  • Versions of Major Components:
  • Apache Tika 1.4
  • Carrot2 3.8.0
  • Velocity 1.7 and Velocity Tools 2.0
  • Apache UIMA 2.3.1
  • Apache ZooKeeper 3.4.5
  • DETAILED CHANGE LIST:
  • Bug Fixes:
  • SOLR-5647: The lib paths in example-schemaless will now load correctly.
  • SOLR-5770: All attempts to match a SolrCore with it's state in clusterstate.json should be done with the CoreNodeName.
  • SOLR-5875: QueryComponent.mergeIds() unmarshals all docs' sort field values once per doc instead of once per shard.
  • SOLR-5800: Admin UI - Analysis form doesn't render results correctly when a CharFilter is used.
  • SOLR-5870: Admin UI - Reload on Core Admin doesn't show errors
  • SOLR-5867: OverseerCollectionProcessor isn't properly generating https urls in some cases.
  • SOLR-5866: UpdateShardHandler needs to use the system default scheme registry to properly handle https via javax.net.ssl.* properties.
  • SOLR-5782: The full MapReduceIndexer help text does not display when using --help.
  • SOLR-5824: Merge up Solr MapReduce contrib code to latest external changes. Includes a few minor bug fixes.
  • SOLR-5818: distrib search with custom comparator does not quite work correctly
  • SOLR-5895: JavaBinLoader hides IOExceptions.
  • SOLR-5861: Recovery should not set onlyIfLeaderActive=true for slice in 'recovery' state.
  • SOLR-5423: CSV output doesn't include function field
  • SOLR-5550: shards.info is not returned by a short circuited distributed query.
  • SOLR-5777: Fix ordering of field values in JSON updates where field name key is repeated
  • SOLR-5734: We should use System.nanoTime rather than System.currentTimeMillis when calculating elapsed time.
  • SOLR-5760: ConcurrentUpdateSolrServer has a blockUntilFinished call when streamDeletes is true that should be tucked into the if statement below it.
  • SOLR-5761: HttpSolrServer has a few fields that can be set via setters but are not volatile.
  • SOLR-5907: The hdfs write cache can cause a reader to see a corrupted state. It now defaults to off, and if you were using solr.hdfs.blockcache.write.enabled explicitly, you should set it to false.
  • SOLR-5811: The Overseer will retry work items until success, which is a serious problem if you hit a bad work item.
  • SOLR-5796: Increase how long we are willing to wait for a core to see the ZK advertised leader in it's local state.
  • SOLR-5834: Overseer threads are only being interrupted and not closed.
  • SOLR-5839: ZookeeperInfoServlet does not trim path properly.
  • SOLR-5874: Unsafe cast in CloudSolrServer's RouteException. Change RouteException to handle Throwable rather than Exception.
  • SOLR-5899: CloudSolrServer's RouteResponse and RouteException should be publicly accessible.
  • SOLR-5905: CollapsingQParserPlugin throws a NPE if required 'field' param is missing.
  • SOLR-5906: Collection create API ignores property.instanceDir parameter.
  • SOLR-5920: Distributed sort on DateField, BoolField and BCD{Int,Long,Str}Field returns string cast exception
  • Other Changes:
  • SOLR-5796: Make how long we are willing to wait for a core to see the ZK advertised leader in it's local state configurable.

New in version 4.7.0 (February 27th, 2014)

  • Versions of Major Components:
  • Apache Tika 1.4
  • Carrot2 3.8.0
  • Velocity 1.7 and Velocity Tools 2.0
  • Apache UIMA 2.3.1
  • Apache ZooKeeper 3.4.5
  • New Features:
  • SOLR-5308: SOLR-5601: SOLR-5710: A new 'migrate' collection API to split all documents with a route key into another collection
  • SOLR-5441: Expose number of transaction log files and their size via JMX.
  • SOLR-5320: Added support for tri-level compositeId routing.
  • SOLR-5287,SOLR-5522,SOLR-5446,SOLR-5456,SOLR-5539,SOLR-5458: Admin UI - Added a new "Files" conf directory browser/file viewer.
  • SOLR-5447, SOLR-5490: Add a QParserPlugin for Lucene's SimpleQueryParser.
  • SOLR-5208: Support for the setting of core.properties key/values at create-time on Collections API
  • SOLR-5428: SOLR-5690: New 'stats.calcdistinct' parameter in StatsComponent returns set of distinct values and their count. This can also be specified per field e.g. 'f.field.stats.calcdistinct'.
  • SOLR-5378, SOLR-5528: A new SuggestComponent that fully utilizes the Lucene suggester module and adds pluggable dictionaries, payloads and better distributed support. This is intended to eventually replace the Suggester support through the SpellCheckComponent.
  • SOLR-5492: Return the replica that actually served the query in shards.info response.
  • SOLR-5506: Support docValues in CollationField and ICUCollationField.
  • SOLR-5023: Add support for deleteInstanceDir to be passed from SolrJ for Core Unload action.
  • SOLR-1871: The 'map' function query accepts a ValueSource as target and default value.
  • SOLR-5556: Allow class of CollectionsHandler and InfoHandler to be specified in solr.xml.
  • SOLR-5581: Give ZkCLI the ability to get files.
  • SOLR-5536: Add ValueSource collapse criteria to CollapsingQParsingPlugin
  • SOLR-5541: Allow QueryElevationComponent to accept elevateIds and excludeIds as http parameters
  • SOLR-5463: new 'cursorMark' request param for deep paging of sorted result sets
  • SOLR-5529: Add support for queries to use multiple suggesters.
  • SOLR-1301: Add a Solr contrib that allows for building Solr indexes via Hadoop's MapReduce.
  • SOLR-5631: Add support for Lucene's FreeTextSuggester.
  • SOLR-5695: Add support for Lucene's BlendedInfixSuggester.
  • SOLR-5476: Overseer Role for nodes
  • SOLR-5594: Allow FieldTypes to specify custom PrefixQuery behavior
  • LUCENE-5395: Upgrade to Spatial4j 0.4. Various new options are now exposed automatically for an RPT field type. See Spatial4j CHANGES & javadocs.
  • SOLR-5670: allow _version_ to use DocValues.
  • SOLR-5535: Set "partialResults" header for shards that error out if shards.tolerant is specified.
  • SOLR-5610: Support cluster-wide properties with an API called CLUSTERPROP
  • SOLR-5623: Better diagnosis of RuntimeExceptions in analysis
  • SOLR-5530: Added a NoOpResponseParser for SolrJ which puts the entire raw response into an entry in the NamedList.
  • SOLR-5682: Make the admin InfoHandler more pluggable / derivable.
  • SOLR-5672: Add logParamsList parameter to support reduced logging.
  • SOLR-3854: SSL support for SolrCloud.
  • Bug Fixes:
  • SOLR-5438: DebugComponent throws NPE when used with grouping.
  • SOLR-4612: Admin UI - Analysis Screen contains empty table-columns
  • SOLR-5451: SyncStrategy closes it's http connection manager before the executor that uses it in it's close method.
  • SOLR-5460: SolrDispatchFilter#sendError can get a SolrCore that it does not close.
  • SOLR-5461: Request proxying should only set con.setDoOutput(true) if the request is a post.
  • SOLR-5481: SolrCmdDistributor should not let the http client do it's own retries.
  • LUCENE-5347: Fixed Solr's Zookeeper Client to copy files to Zookeeper using binary transfer. Previously data was read with default encoding and stored in zookeeper as UTF-8. This bug was found after upgrading to forbidden-apis 1.4.
  • SOLR-4376: DataImportHandler uses wrong date format for last_index_time if a delta-import is run first before any full-imports.
  • SOLR-5494: CoreContainer#remove throws NPE rather than returning null when a SolrCore does not exist in core discovery mode.
  • SOLR-5354: Distributed sort is broken with CUSTOM FieldType.
  • SOLR-5515: NPE when getting stats on date field with empty result on SolrCloud.
  • SOLR-5204: StatsComponent and SpellCheckComponent do not support the shards.tolerant=true parameter.
  • SOLR-5527: DIH logs spurious warning for special commands.
  • SOLR-5524: Exception when using Query Function inside Scale Function.
  • SOLR-5562: ConcurrentUpdateSolrServer constructor ignores supplied httpclient.
  • SOLR-5567: ZkController getHostAddress duplicates url prefix.
  • SOLR-4992: Solr eats OutOfMemoryError exceptions in many cases.
  • LUCENE-5399, SOLR-5354 sort wouldn't work correctly with distributed searching for some field types such as legacy numeric types
  • SOLR-5643: ConcurrentUpdateSolrServer will sometimes not spawn a new Runner thread even though there are updates in the queue.
  • SOLR-5650: When a replica becomes a leader, only peer sync with other replicas that last published an ACTIVE state.
  • SOLR-5657: When a SolrCore starts on HDFS, it should gracefully handle HDFS being in safe mode.
  • SOLR-5663: example-DIH uses non-existing column for mapping (case-sensitive)
  • SOLR-5666: Using the hdfs write cache can result in appearance of corrupted index.
  • SOLR-5230: Call DelegatingCollector.finish() during grouping.
  • SOLR-5679: Shard splitting fails with ClassCastException on collections upgraded from 4.5 and earlier versions.
  • SOLR-5673: HTTPSolrServer doesn't set own property correctly in setFollowRedirects.
  • SOLR-5676: SolrCloud updates rejected if talking to secure ZooKeeper.
  • SOLR-5634: SolrJ GroupCommand.getNGroups returns null if group.format=simple and group.ngroups=true.
  • SOLR-5667: Performance problem when not using hdfs block cache.
  • SOLR-5526: Fixed NPE that could arrise when explicitly configuring some built in QParserPlugins
  • SOLR-5598: LanguageIdentifierUpdateProcessor ignores all but the first value of multiValued string fields.
  • SOLR-5593: Replicas should accept the last updates from a leader that has just lost it's connection to ZooKeeper.
  • SOLR-5678: SolrZkClient should throw a SolrException when connect times out rather than a RuntimeException.
  • SOLR-4072: Error message is incorrect for linkconfig in ZkCLI.
  • SOLR-5691: Sharing non thread safe WeakHashMap across thread can cause problems.
  • SOLR-5693: Running on HDFS does work correctly with NRT search.
  • SOLR-5644: SplitShard does not handle not finding a shard leader well.
  • SOLR-5704: coreRootDirectory was not respected when creating new cores via CoreAdminHandler
  • SOLR-5709: Highlighting grouped duplicate docs from different shards with group.limit > 1 throws ArrayIndexOutOfBoundsException.
  • SOLR-5561: Fix implicit DefaultSimilarityFactory initialization in IndexSchema to properly specify discountOverlap option.
  • SOLR-5689: On reconnect, ZkController cancels election on first context rather than latest.
  • SOLR-5649: Clean up some minor ConnectionManager issues.
  • SOLR-5365: Fix bug with compressed files in ExtractingRequestHandler by upgrading commons-compress to 1.7
  • SOLR-5675: cloud-scripts/zkcli.bat: quote option log4j
  • SOLR-5721: ConnectionManager can become stuck in likeExpired.
  • SOLR-5731: In ConnectionManager, we should catch and only log exceptions from BeforeReconnect.
  • SOLR-5718: Make LBHttpSolrServer zombie checks non-distrib and non-scoring.
  • SOLR-5727: LBHttpSolrServer should only retry on Connection exceptions when sending updates. Affects CloudSolrServer.
  • SOLR-5739: Sub-shards created by shard splitting have their update log set to buffering mode on restarts.
  • SOLR-5741: UpdateShardHandler was not correctly setting max total connections on the HttpClient.
  • SOLR-5620: ZKStateReader.aliases should be volatile to ensure all threads see the latest aliases.
  • SOLR-5448: ShowFileRequestHandler treats everything as Directory, when in Cloud-Mode.
  • Optimizations:
  • SOLR-5436: Eliminate the 1500ms wait in overseer loop as well as polling the ZK distributed queue.
  • SOLR-5189: Solr 4.x Web UI Log Viewer does not display 'date' column from logs
  • SOLR-5512: Optimize DocValuesFacets.
  • SOLR-2960: fix DIH XPathEntityProcessor to add the correct number of "null" placeholders for multi-valued fields
  • SOLR-5214: Reduce memory usage for shard splitting by merging segments one at a time.
  • SOLR-4227: Wrap XML RequestWriter's OutputStreamWriter in a BufferedWriter to avoid frequent converter invocations.
  • SOLR-5624: Enable QueryResultCache for CollapsingQParserPlugin.
  • LUCENE-5440: DocSet decoupled from OpenBitSet. DocSetBase moved to use FixedBitSet instead of OpenBitSet. As a result BitDocSet now only works with FixedBitSet.
  • Other Changes:
  • SOLR-5399: Add distributed request tracking information to DebugComponent
  • SOLR-5421: Remove double set of distrib.from param in processAdd method of DistributedUpdateProcessor.
  • SOLR-5404: The example config references deprecated classes.
  • SOLR-5487: Replication factor error message doesn't match constraint.
  • SOLR-5499: Log a warning if /get is not registered when using SolrCloud.
  • SOLR-5517: Return HTTP error on POST requests with no Content-Type.
  • SOLR-5502: Added a test for tri-level compositeId routing with documents having a "/" in a document id.
  • SOLR-5533: Improve out of the box support for running Solr on hdfs with SolrCloud.
  • SOLR-5548: Give DistributedSearchTestCase / JettySolrRunner the ability to specify extra filters.
  • SOLR-5555: LBHttpSolrServer and CloudSolrServer constructors don't need to declare MalformedURLExceptions
  • SOLR-5565: Raise default ZooKeeper session timeout to 30 seconds from 15 seconds.
  • SOLR-5574: CoreContainer shutdown publishes all nodes as down and waits to see that and then again publishes all nodes as down.
  • SOLR-5590: Upgrade HttpClient/HttpComponents to 4.3.x.
  • SOLR-2794: change the default of hl.phraseLimit to 5000.
  • SOLR-5632: Improve response message for reloading a non-existent core.
  • SOLR-5633: HttpShardHandlerFactory should make its http client available to subclasses.
  • SOLR-5684: Shutdown SolrServer clients created in BasicDistributedZk2Test and BasicDistributedZkTest.
  • SOLR-5629: SolrIndexSearcher.name should include core name.
  • SOLR-5702: Log config name found for collection at info level.
  • SOLR-5659: Add test for compositeId ending with an '!'.
  • SOLR-5700: Improve error handling of remote queries (proxied requests).
  • SOLR-5585: Raise Collections API timeout to 3 minutes from one minute.
  • SOLR-5257: Improved error/warn messages when Update XML contains unexpected XML nodes

New in version 4.6.1 (January 28th, 2014)

  • Versions of Major Components:
  • Apache Tika 1.4
  • Carrot2 3.8.0
  • Velocity 1.7 and Velocity Tools 2.0
  • Apache UIMA 2.3.1
  • Apache ZooKeeper 3.4.5
  • Bug Fixes:
  • SOLR-5408: CollapsingQParserPlugin scores incorrectly when multiple sort criteria are used
  • SOLR-5416: CollapsingQParserPlugin breaks Tag/Exclude Faceting
  • SOLR-5442: Python client cannot parse proxied response when served by Tomcat.
  • SOLR-5445: Proxied responses should propagate all headers rather than the first one for each key.
  • SOLR-5479: SolrCmdDistributor retry logic stops if a leader for the request cannot be found in 1 second.
  • SOLR-5532: SolrJ Content-Type validation is too strict for some webcontainers / proxies.
  • SOLR-5547: Creating a collection alias using SolrJ's CollectionAdminRequest sets the alias name and the collections to alias to the same value.
  • SOLR-5577: Likely ZooKeeper expiration should not slow down updates a given amount, but instead cut off updates after a given time.
  • SOLR-5580: NPE when creating a core with both explicit shard and coreNodeName.
  • SOLR-5552: Leader recovery process can select the wrong leader if all replicas for a shard are down and trying to recover as well as lose updates that should have been recovered.
  • SOLR-5569 A replica should not try and recover from a leader until it has published that it is ACTIVE.
  • SOLR-5568 A SolrCore cannot decide to be the leader just because the cluster state says no other SolrCore's are active.
  • SOLR-5496: We should share an http connection manager across non search HttpClients and ensure all http connection managers get shutdown.
  • SOLR-5583: ConcurrentUpdateSolrServer#blockUntilFinished may wait forever if the executor service is shutdown.
  • SOLR-5586: All ZkCmdExecutor's should be initialized with the zk client timeout.
  • SOLR-5587: ElectionContext implementations should use ZkCmdExecutor#ensureExists to ensure their election paths are properly created.
  • SOLR-5540: HdfsLockFactory should explicitly create the lock parent directory if necessary.
  • SOLR-4709: The core reload after replication if config files have changed can fail due to a race condition.
  • SOLR-5503: Retry 'forward to leader' requests less aggressively - rather than on IOException and status 500, ConnectException.
  • SOLR-5588: PeerSync doesn't count all connect failures as success.
  • SOLR-5564: hl.maxAlternateFieldLength should apply to original field when fallback is attempted
  • SOLR-5608: Don't allow a closed SolrCore to publish state to ZooKeeper.
  • SOLR-5615: Deadlock while trying to recover after a ZK session expiration.
  • SOLR-5543: Core swaps resulted in duplicate core entries in solr.xml when using solr.xml persistence.
  • SOLR-5618: Fix false cache hits in queryResultCache when hashCodes are equal and duplicate filter queries exist in one of the requests
  • SOLR-4260: ConcurrentUpdateSolrServer#blockUntilFinished can return before all previously added updates have finished. This could cause distributed updates meant for replicas to be lost.
  • SOLR-5645: A SolrCore reload via the CoreContainer will try and register in zk again with the new SolrCore.
  • SOLR-5636: SolrRequestParsers does some xpath lookups on every request, which can cause concurrency issues.
  • SOLR-5658: commitWithin and overwrite are not being distributed to replicas now that SolrCloud uses javabin to distribute updates.
  • Optimizations:
  • SOLR-5576: Improve concurrency when registering and waiting for all SolrCore's to register a DOWN state.