[7588] | 1 | Apache Solr Release Notes |
---|
| 2 | |
---|
| 3 | Introduction |
---|
| 4 | ------------ |
---|
| 5 | Apache Solr is an open source enterprise search server based on the Apache Lucene Java |
---|
| 6 | search library, with XML/HTTP and JSON APIs, hit highlighting, faceted search, |
---|
| 7 | caching, replication, and a web administration interface. It runs in a Java |
---|
| 8 | servlet container such as Tomcat. |
---|
| 9 | |
---|
| 10 | See http://lucene.apache.org/solr for more information. |
---|
| 11 | |
---|
| 12 | |
---|
| 13 | Getting Started |
---|
| 14 | --------------- |
---|
| 15 | You need a Java 1.6 VM or later installed. |
---|
| 16 | In this release, there is an example Solr server including a bundled |
---|
| 17 | servlet container in the directory named "example". |
---|
| 18 | See the tutorial at http://lucene.apache.org/solr/tutorial.html |
---|
| 19 | |
---|
| 20 | |
---|
| 21 | $Id: CHANGES.txt 1352798 2012-06-22 08:24:10Z tommaso $ |
---|
| 22 | |
---|
| 23 | ================== 4.0.0-ALPHA ================== |
---|
| 24 | More information about this release, including any errata related to the |
---|
| 25 | release notes, upgrade instructions, or other changes may be found online at: |
---|
| 26 | https://wiki.apache.org/solr/Solr4.0 |
---|
| 27 | |
---|
| 28 | |
---|
| 29 | Versions of Major Components |
---|
| 30 | --------------------- |
---|
| 31 | Apache Tika 1.1 |
---|
| 32 | Carrot2 3.5.0 |
---|
| 33 | Velocity 1.6.4 and Velocity Tools 2.0 |
---|
| 34 | Apache UIMA 2.3.1 |
---|
| 35 | Apache ZooKeeper 3.3.4 |
---|
| 36 | |
---|
| 37 | |
---|
| 38 | Upgrading from Solr 3.6-dev |
---|
| 39 | ---------------------- |
---|
| 40 | |
---|
| 41 | * The Lucene index format has changed and as a result, once you upgrade, |
---|
| 42 | previous versions of Solr will no longer be able to read your indices. |
---|
| 43 | In a master/slave configuration, all searchers/slaves should be upgraded |
---|
| 44 | before the master. If the master were to be updated first, the older |
---|
| 45 | searchers would not be able to read the new index format. |
---|
| 46 | |
---|
| 47 | * Setting abortOnConfigurationError=false is no longer supported |
---|
| 48 | (since it has never worked properly). Solr will now warn you if |
---|
| 49 | you attempt to set this configuration option at all. (see SOLR-1846) |
---|
| 50 | |
---|
| 51 | * The default logic for the 'mm' param of the 'dismax' QParser has |
---|
| 52 | been changed. If no 'mm' param is specified (either in the query, |
---|
| 53 | or as a default in solrconfig.xml) then the effective value of the |
---|
| 54 | 'q.op' param (either in the query or as a default in solrconfig.xml |
---|
| 55 | or from the 'defaultOperator' option in schema.xml) is used to |
---|
| 56 | influence the behavior. If q.op is effectively "AND" then mm=100%. |
---|
| 57 | If q.op is effectively "OR" then mm=0%. Users who wish to force the |
---|
| 58 | legacy behavior should set a default value for the 'mm' param in |
---|
| 59 | their solrconfig.xml file. |
---|
| 60 | |
---|
| 61 | * The VelocityResponseWriter is no longer built into the core. Its JAR and |
---|
| 62 | dependencies now need to be added (via <lib> or solr/home lib inclusion), |
---|
| 63 | and it needs to be registered in solrconfig.xml like this: |
---|
| 64 | <queryResponseWriter name="velocity" class="solr.VelocityResponseWriter"/> |
---|
| 65 | |
---|
| 66 | * The update request parameter to choose Update Request Processor Chain is |
---|
| 67 | renamed from "update.processor" to "update.chain". The old parameter was |
---|
| 68 | deprecated but still working since Solr3.2, but is now removed |
---|
| 69 | entirely. |
---|
| 70 | |
---|
| 71 | * The <indexDefaults> and <mainIndex> sections of solrconfig.xml are discontinued |
---|
| 72 | and replaced with the <indexConfig> section. There are also better defaults. |
---|
| 73 | When migrating, if you don't know what your old settings mean, simply delete |
---|
| 74 | both <indexDefaults> and <mainIndex> sections. If you have customizations, |
---|
| 75 | put them in <indexConfig> section - with same syntax as before. |
---|
| 76 | |
---|
| 77 | * Two of the SolrServer subclasses in SolrJ were renamed/replaced. |
---|
| 78 | CommonsHttpSolrServer is now HttpSolrServer, and |
---|
| 79 | StreamingUpdateSolrServer is now ConcurrentUpdateSolrServer. |
---|
| 80 | |
---|
| 81 | * The PingRequestHandler no longer looks for a <healthcheck/> option in the |
---|
| 82 | (legacy) <admin> section of solrconfig.xml. Users who wish to take |
---|
| 83 | advantage of this feature should configure a "healthcheckFile" init param |
---|
| 84 | directly on the PingRequestHandler. As part of this change, relative file |
---|
| 85 | paths have been fixed to be resolved against the data dir. See the example |
---|
| 86 | solrconfig.xml and SOLR-1258 for more details. |
---|
| 87 | |
---|
| 88 | * Due to low level changes to support SolrCloud, the uniqueKey field can no |
---|
| 89 | longer be populated via <copyField/> or <field default=...> in the |
---|
| 90 | schema.xml. Users wishing to have Solr automaticly generate a uniqueKey |
---|
| 91 | value when adding documents should instead use an instance of |
---|
| 92 | solr.UUIDUpdateProcessorFactory in their update processor chain. See |
---|
| 93 | SOLR-2796 for more details. |
---|
| 94 | |
---|
| 95 | |
---|
| 96 | Detailed Change List |
---|
| 97 | ---------------------- |
---|
| 98 | |
---|
| 99 | New Features |
---|
| 100 | ---------------------- |
---|
| 101 | |
---|
| 102 | * SOLR-3272: Solr filter factory for MorfologikFilter (Polish lemmatisation). |
---|
| 103 | (RafaÅ KuÄ via Dawid Weiss, Steven Rowe, Uwe Schindler). |
---|
| 104 | |
---|
| 105 | * SOLR-571: The autowarmCount for LRUCaches (LRUCache and FastLRUCache) now |
---|
| 106 | supports "percentages" which get evaluated relative the current size of |
---|
| 107 | the cache when warming happens. |
---|
| 108 | (Tomas Fernandez Lobbe and hossman) |
---|
| 109 | |
---|
| 110 | * SOLR-1932: New relevancy function queries: termfreq, tf, docfreq, idf |
---|
| 111 | norm, maxdoc, numdocs. (yonik) |
---|
| 112 | |
---|
| 113 | * SOLR-1665: Add debug component options for timings, results and query info only (gsingers, hossman, yonik) |
---|
| 114 | |
---|
| 115 | * SOLR-2112: Solrj API now supports streaming results. (ryan) |
---|
| 116 | |
---|
| 117 | * SOLR-792: Adding PivotFacetComponent for Hierarchical faceting |
---|
| 118 | (ehatcher, Jeremy Hinegardner, Thibaut Lassalle, ryan) |
---|
| 119 | |
---|
| 120 | * LUCENE-2507, SOLR-2571, SOLR-2576: Added DirectSolrSpellChecker, which uses Lucene's |
---|
| 121 | DirectSpellChecker to retrieve correction candidates directly from the term dictionary using |
---|
| 122 | levenshtein automata. (James Dyer, rmuir) |
---|
| 123 | |
---|
| 124 | * SOLR-1873, SOLR-2358: SolrCloud - added shared/central config and core/shard management via zookeeper, |
---|
| 125 | built-in load balancing, and distributed indexing. |
---|
| 126 | (Jamie Johnson, Sami Siren, Ted Dunning, yonik, Mark Miller) |
---|
| 127 | Additional Work: |
---|
| 128 | SOLR-2324: SolrCloud solr.xml parameters are not persisted by CoreContainer. |
---|
| 129 | (Massimo Schiavon, Mark Miller) |
---|
| 130 | SOLR-2287: Allow users to query by multiple, compatible collections with SolrCloud. |
---|
| 131 | (Soheb Mahmood, Alex Cowell, Mark Miller) |
---|
| 132 | SOLR-2622: ShowFileRequestHandler does not work in SolrCloud mode. |
---|
| 133 | (Stefan Matheis, Mark Miller) |
---|
| 134 | SOLR-3108: Error in SolrCloud's replica lookup code when replica's are hosted in same Solr instance. |
---|
| 135 | (Bruno Dumon, Sami Siren, Mark Miller) |
---|
| 136 | SOLR-3080: Remove shard info from zookeeper when SolrCore is explicitly unloaded. |
---|
| 137 | (yonik, Mark Miller, siren) |
---|
| 138 | SOLR-3437: Recovery issues a spurious commit to the cluster. (Trym R. MÞller via Mark Miller) |
---|
| 139 | SOLR-2822: Skip update processors already run on other nodes (hossman) |
---|
| 140 | |
---|
| 141 | * SOLR-1566: Transforming documents in the ResponseWriters. This will allow |
---|
| 142 | for more complex results in responses and open the door for function queries |
---|
| 143 | as results. |
---|
| 144 | (ryan with patches from grant, noble, cmale, yonik, Jan HÞydahl, |
---|
| 145 | Arul Kalaipandian, Luca Cavanna, hossman) |
---|
| 146 | SOLR-2037: Thanks to SOLR-1566, documents boosted by the QueryElevationComponent |
---|
| 147 | can be marked as boosted. (gsingers, ryan, yonik) |
---|
| 148 | |
---|
| 149 | * SOLR-2396: Add CollationField, which is much more efficient than |
---|
| 150 | the Solr 3.x CollationKeyFilterFactory, and also supports |
---|
| 151 | Locale-sensitive range queries. (rmuir) |
---|
| 152 | |
---|
| 153 | * SOLR-2338: Add support for using <similarity/> in a schema's fieldType, |
---|
| 154 | for customizing scoring on a per-field basis. (hossman, yonik, rmuir) |
---|
| 155 | |
---|
| 156 | * SOLR-2335: New 'field("...")' function syntax for referring to complex |
---|
| 157 | field names (containing whitespace or special characters) in functions. |
---|
| 158 | |
---|
| 159 | * SOLR-2383: /browse improvements: generalize range and date facet display |
---|
| 160 | (Jan HÞydahl via yonik) |
---|
| 161 | |
---|
| 162 | * SOLR-2272: Pseudo-join queries / filters. Examples: |
---|
| 163 | To restrict to the set of parents with at least one blue-eyed child: |
---|
| 164 | fq={!join from=parent to=name}eyes:blue |
---|
| 165 | To restrict to the set of children with at least one blue-eyed parent: |
---|
| 166 | fq={!join from=name to=parent}eyes:blue |
---|
| 167 | (yonik) |
---|
| 168 | |
---|
| 169 | * SOLR-1942: Added the ability to select postings format per fieldType in schema.xml |
---|
| 170 | as well as support custom Codecs in solrconfig.xml. |
---|
| 171 | (simonw via rmuir) |
---|
| 172 | |
---|
| 173 | * SOLR-2136: Boolean type added to function queries, along with |
---|
| 174 | new functions exists(), if(), and(), or(), xor(), not(), def(), |
---|
| 175 | and true and false constants. (yonik) |
---|
| 176 | |
---|
| 177 | * SOLR-2491: Add support for using spellcheck collation in conjunction |
---|
| 178 | with grouping. Note that the number of hits returned for collations |
---|
| 179 | is the number of ungrouped hits. (James Dyer via rmuir) |
---|
| 180 | |
---|
| 181 | * SOLR-1298: Return FunctionQuery as pseudo field. The solr 'fl' param |
---|
| 182 | now supports functions. For example: fl=id,sum(x,y) -- NOTE: only |
---|
| 183 | functions with fast random access are reccomended. (yonik, ryan) |
---|
| 184 | |
---|
| 185 | * SOLR-705: Optionally return shard info with each document in distributed |
---|
| 186 | search. Use fl=id,[shard] to return the shard url. (ryan) |
---|
| 187 | |
---|
| 188 | * SOLR-2417: Add explain info directly to return documents using |
---|
| 189 | ?fl=id,[explain] (ryan) |
---|
| 190 | |
---|
| 191 | * SOLR-2533: Converted ValueSource.ValueSourceSortField over to new rewriteable Lucene |
---|
| 192 | SortFields. ValueSourceSortField instances must be rewritten before they can be used. |
---|
| 193 | This is done by SolrIndexSearcher when necessary. (Chris Male). |
---|
| 194 | |
---|
| 195 | * SOLR-2193, SOLR-2565: You may now specify a 'soft' commit when committing. This will |
---|
| 196 | use Lucene's NRT feature to avoid guaranteeing documents are on stable storage in exchange |
---|
| 197 | for faster reopen times. There is also a new 'soft' autocommit tracker that can be |
---|
| 198 | configured. (Mark Miller, Robert Muir) |
---|
| 199 | |
---|
| 200 | * SOLR-2399: Updated Solr Admin interface. New look and feel with per core administration |
---|
| 201 | and many new options. (Stefan Matheis via ryan) |
---|
| 202 | |
---|
| 203 | * SOLR-1032: CSV handler now supports "literal.field_name=value" parameters. |
---|
| 204 | (Simon Rosenthal, ehatcher) |
---|
| 205 | |
---|
| 206 | * SOLR-2656: realtime-get, efficiently retrieves the latest stored fields for specified |
---|
| 207 | documents, even if they are not yet searchable (i.e. without reopening a searcher) |
---|
| 208 | (yonik) |
---|
| 209 | |
---|
| 210 | * SOLR-2703: Added support for Lucene's "surround" query parser. (Simon Rosenthal, ehatcher) |
---|
| 211 | |
---|
| 212 | * SOLR-2754: Added factories for several ranking algorithms: |
---|
| 213 | BM25SimilarityFactory: Okapi BM25 |
---|
| 214 | DFRSimilarityFactory: Divergence from Randomness models |
---|
| 215 | IBSimilarityFactory: Information-based models |
---|
| 216 | LMDirichletSimilarity: LM with Dirichlet smoothing |
---|
| 217 | LMJelinekMercerSimilarity: LM with Jelinek-Mercer smoothing |
---|
| 218 | (David Mark Nemeskey, Robert Muir) |
---|
| 219 | |
---|
| 220 | * SOLR-2134 Trie* fields should support sortMissingLast=true, and deprecate Sortable* Field Types |
---|
| 221 | (Ryan McKinley, Mike McCandless, Uwe Schindler, Erick Erickson) |
---|
| 222 | |
---|
| 223 | * SOLR-2438 added MultiTermAwareComponent to the various classes to allow automatic lowercasing |
---|
| 224 | for multiterm queries (wildcards, regex, prefix, range, etc). You can now optionally specify a |
---|
| 225 | "multiterm" analyzer in our schema.xml, but Solr should "do the right thing" if you don't |
---|
| 226 | specify <analyzer type="multiterm"> (Pete Sturge Erick Erickson, Mentoring from Seeley and Muir) |
---|
| 227 | |
---|
| 228 | * SOLR-2481: Add support for commitWithin in DataImportHandler (Sami Siren via yonik) |
---|
| 229 | |
---|
| 230 | * SOLR-2992: Add support for IndexWriter.prepareCommit() via prepareCommit=true |
---|
| 231 | on update URLs. (yonik) |
---|
| 232 | |
---|
| 233 | * SOLR-2906: Added LFU cache options to Solr. (Shawn Heisey via Erick Erickson) |
---|
| 234 | |
---|
| 235 | * SOLR-3069: Ability to add openSearcher=false to not open a searcher when doing |
---|
| 236 | a hard commit. commitWithin now only invokes a softCommit. (yonik) |
---|
| 237 | |
---|
| 238 | * SOLR-2802: New FieldMutatingUpdateProcessor and Factory to simplify the |
---|
| 239 | development of UpdateProcessors that modify field values of documents as |
---|
| 240 | they are indexed. Also includes several useful new implementations: |
---|
| 241 | RemoveBlankFieldUpdateProcessorFactory |
---|
| 242 | TrimFieldUpdateProcessorFactory |
---|
| 243 | HTMLStripFieldUpdateProcessorFactory |
---|
| 244 | RegexReplaceProcessorFactory |
---|
| 245 | FieldLengthUpdateProcessorFactory |
---|
| 246 | ConcatFieldUpdateProcessorFactory |
---|
| 247 | FirstFieldValueUpdateProcessorFactory |
---|
| 248 | LastFieldValueUpdateProcessorFactory |
---|
| 249 | MinFieldValueUpdateProcessorFactory |
---|
| 250 | MaxFieldValueUpdateProcessorFactory |
---|
| 251 | TruncateFieldUpdateProcessorFactory |
---|
| 252 | IgnoreFieldUpdateProcessorFactory |
---|
| 253 | (hossman, janhoy) |
---|
| 254 | |
---|
| 255 | * SOLR-3120: Optional post filtering for spatial queries bbox and geofilt |
---|
| 256 | for LatLonType. (yonik) |
---|
| 257 | |
---|
| 258 | * SOLR-2459: Expose LogLevel selection with a RequestHandler rather then servlet |
---|
| 259 | (Stefan Matheis, Upayavira, ryan) |
---|
| 260 | |
---|
| 261 | * SOLR-3134: Include shard info in distributed response when shards.info=true |
---|
| 262 | (Russell Black, ryan) |
---|
| 263 | |
---|
| 264 | * SOLR-2898: Support grouped faceting. (Martijn van Groningen) |
---|
| 265 | Additional Work: |
---|
| 266 | SOLR-3406: Extended grouped faceting support to facet.query and facet.range parameters. |
---|
| 267 | (David Boychuck, Martijn van Groningen) |
---|
| 268 | |
---|
| 269 | * SOLR-2949: QueryElevationComponent is now supported with distributed search. |
---|
| 270 | (Mark Miller, yonik) |
---|
| 271 | |
---|
| 272 | * SOLR-3221: Added the ability to directly configure aspects of the concurrency |
---|
| 273 | and thread-pooling used within distributed search in solr. This allows for finer |
---|
| 274 | grained controlled and can be tuned by end users to target their own specific |
---|
| 275 | requirements. This builds on the work of the HttpCommComponent and uses the same configuration |
---|
| 276 | block to configure the thread pool. The default configuration has |
---|
| 277 | the same behaviour as solr 3.5, favouring throughput over latency. More |
---|
| 278 | information can be found on the wiki (http://wiki.apache.org/solr/SolrConfigXml) (Greg Bowyer) |
---|
| 279 | |
---|
| 280 | * SOLR-3278: Negative boost support to the Extended Dismax Query Parser Boost Query (bq). |
---|
| 281 | (James Dyer) |
---|
| 282 | |
---|
| 283 | * SOLR-3255: OpenExchangeRates.Org Exchange Rate Provider for CurrencyField (janhoy) |
---|
| 284 | |
---|
| 285 | * SOLR-3358: Logging events are captured and available from the /admin/logging |
---|
| 286 | request handler. (ryan) |
---|
| 287 | |
---|
| 288 | * SOLR-1535: PreAnalyzedField type provides a functionality to index (and optionally store) |
---|
| 289 | field content that was already processed and split into tokens using some external processing |
---|
| 290 | chain. Serialization format is pluggable, and defaults to JSON. (ab) |
---|
| 291 | |
---|
| 292 | * SOLR-3363: Consolidated Exceptions in Analysis Factories so they only throw |
---|
| 293 | InitalizationExceptions (Chris Male) |
---|
| 294 | |
---|
| 295 | * SOLR-2690: New support for a "TZ" request param which overrides the TimeZone |
---|
| 296 | used when rounding Dates in DateMath expressions for the entire request |
---|
| 297 | (all date range queries and date faceting is affected). The default TZ |
---|
| 298 | is still UTC. (David Schlotfeldt, hossman) |
---|
| 299 | |
---|
| 300 | * SOLR-3402: Analysis Factories are now configured with their Lucene Version |
---|
| 301 | throw setLuceneMatchVersion, rather than through the Map passed to init. |
---|
| 302 | Parsing and simple error checking for the Version is now done inside |
---|
| 303 | the code that creates the Analysis Factories. (Chris Male) |
---|
| 304 | |
---|
| 305 | * SOLR-3178: Optimistic locking. If a _version_ is provided with an update |
---|
| 306 | that does not match the version in the index, an HTTP 409 error (Conflict) |
---|
| 307 | will result. (Per Steffensen, yonik) |
---|
| 308 | |
---|
| 309 | * SOLR-139: Updateable documents. JSON Example: |
---|
| 310 | {"id":"mydoc", "f1":{"set":10}, "f2":{"add":20}} will result in field "f1" |
---|
| 311 | being set to 10, "f2" having an additional value of 20 added, and all |
---|
| 312 | other existing fields unchanged. All source fields must be stored for |
---|
| 313 | this feature to work correctly. (Ryan McKinley, Erik Hatcher, yonik) |
---|
| 314 | |
---|
| 315 | * SOLR-2857: Support XML,CSV,JSON, and javabin in a single RequestHandler and |
---|
| 316 | choose the correct ContentStreamLoader based on Content-Type header. This |
---|
| 317 | also deprecates the existing [Xml,JSON,CSV,Binary,Xslt]UpdateRequestHandler. |
---|
| 318 | (ryan) |
---|
| 319 | |
---|
| 320 | * SOLR-2585: Context-Sensitive Spelling Suggestions & Collations. This adds support |
---|
| 321 | for the "spellcheck.alternativeTermCount" & "spellcheck.maxResultsForSuggest" |
---|
| 322 | parameters, letting users receive suggestions even when all the queried terms |
---|
| 323 | exist in the dictionary. This differs from "spellcheck.onlyMorePopular" in |
---|
| 324 | that the suggestions need not consist entirely of terms with a greater document |
---|
| 325 | frequency than the queried terms. (James Dyer) |
---|
| 326 | |
---|
| 327 | * SOLR-2058: Edismax query parser to allow "phrase slop" to be specified per-field |
---|
| 328 | on the pf/pf2/pf3 parameters using optional "FieldName~slop^boost" syntax. The |
---|
| 329 | prior "FieldName^boost" syntax is still accepted. In such cases the value on the |
---|
| 330 | "ps" parameter serves as the default slop. (Ron Mayer via James Dyer) |
---|
| 331 | |
---|
| 332 | * SOLR-3495: New UpdateProcessors have been added to create default values for |
---|
| 333 | configured fields. These works similarly to the <field default="..."/> |
---|
| 334 | option in schema.xml, but are applied in the UpdateProcessorChain, so they |
---|
| 335 | may be used prior to other UpdateProcessors, or to generate a uniqueKey field |
---|
| 336 | value when using the DistributedUpdateProcessor (ie: SolrCloud) |
---|
| 337 | TimestampUpdateProcessorFactory |
---|
| 338 | UUIDUpdateProcessorFactory |
---|
| 339 | DefaultValueUpdateProcessorFactory |
---|
| 340 | (hossman) |
---|
| 341 | |
---|
| 342 | * SOLR-2993: Add WordBreakSolrSpellChecker to offer suggestions by combining adjacent |
---|
| 343 | query terms and/or breaking terms into multiple words. This spellchecker can be |
---|
| 344 | configured with a traditional checker (ie: DirectSolrSpellChecker). The results |
---|
| 345 | are combined and collations can contain a mix of corrections from both spellcheckers. |
---|
| 346 | (James Dyer) |
---|
| 347 | |
---|
| 348 | * SOLR-3508: Simplify JSON update format for deletes as well as allow |
---|
| 349 | version specification for optimistic locking. Examples: |
---|
| 350 | {"delete":"myid"} |
---|
| 351 | {"delete":["id1","id2","id3"]} |
---|
| 352 | {"delete":{"id":"myid", "_version_":123456789}} |
---|
| 353 | (yonik) |
---|
| 354 | |
---|
| 355 | * SOLR-3211: Allow parameter overrides in conjunction with "spellcheck.maxCollationTries". |
---|
| 356 | To do so, use parameters starting with "spellcheck.collateParam." For instance, to |
---|
| 357 | override the "mm" parameter, specify "spellcheck.collateParam.mm". This is helpful |
---|
| 358 | in cases where testing spellcheck collations for result counts should use different |
---|
| 359 | parameters from the main query (James Dyer) |
---|
| 360 | |
---|
| 361 | * SOLR-2599: CloneFieldUpdateProcessorFactory provides similar functionality |
---|
| 362 | to schema.xml's <copyField/> declaration but as an update processor that can |
---|
| 363 | be combined with other processors in any order. (Jan HÞydahl & hossman) |
---|
| 364 | |
---|
| 365 | * SOLR-3351: eDismax: ps2 and ps3 params (janhoy) |
---|
| 366 | |
---|
| 367 | * SOLR-3542: Add WeightedFragListBuilder for FVH and set it to default fragListBuilder |
---|
| 368 | in example solrconfig.xml. (Sebastian Lutze, koji) |
---|
| 369 | |
---|
| 370 | Optimizations |
---|
| 371 | ---------------------- |
---|
| 372 | |
---|
| 373 | * SOLR-1875: Per-segment field faceting for single valued string fields. |
---|
| 374 | Enable with facet.method=fcs, control the number of threads used with |
---|
| 375 | the "threads" local param on the facet.field param. This algorithm will |
---|
| 376 | only be faster in the presence of rapid index changes. (yonik) |
---|
| 377 | |
---|
| 378 | * SOLR-1904: When facet.enum.cache.minDf > 0 and the base doc set is a |
---|
| 379 | SortedIntSet, convert to HashDocSet for better performance. (yonik) |
---|
| 380 | |
---|
| 381 | * SOLR-2092: Speed up single-valued and multi-valued "fc" faceting. Typical |
---|
| 382 | improvement is 5%, but can be much greater (up to 10x faster) when facet.offset |
---|
| 383 | is very large (deep paging). (yonik) |
---|
| 384 | |
---|
| 385 | * SOLR-2193, SOLR-2565: The default Solr update handler has been improved so |
---|
| 386 | that it uses fewer locks, keeps the IndexWriter open rather than closing it |
---|
| 387 | on each commit (ie commits no longer wait for background merges to complete), |
---|
| 388 | works with SolrCore to provide faster 'soft' commits, and has an improved API |
---|
| 389 | that requires less instanceof special casing. (Mark Miller, Robert Muir) |
---|
| 390 | Additional Work: |
---|
| 391 | SOLR-2697: commit and autocommit operations don't reset |
---|
| 392 | DirectUpdateHandler2.numDocsPending stats attribute. |
---|
| 393 | (Alexey Serba, Mark Miller) |
---|
| 394 | |
---|
| 395 | * SOLR-2950: The QueryElevationComponent now avoids using the FieldCache and looking up |
---|
| 396 | every document id (gsingers, yonik) |
---|
| 397 | |
---|
| 398 | Bug Fixes |
---|
| 399 | ---------------------- |
---|
| 400 | * SOLR-3139: Make ConcurrentUpdateSolrServer send UpdateRequest.getParams() |
---|
| 401 | as HTTP request params (siren) |
---|
| 402 | |
---|
| 403 | * SOLR-3165: Cannot use DIH in Solrcloud + Zookeeper (Alexey Serba, |
---|
| 404 | Mark Miller, siren) |
---|
| 405 | |
---|
| 406 | * SOLR-3068: Occasional NPE in ThreadDumpHandler (siren) |
---|
| 407 | |
---|
| 408 | * SOLR-2762: FSTLookup could return duplicate results or one results less |
---|
| 409 | than requested. (David Smiley, Dawid Weiss) |
---|
| 410 | |
---|
| 411 | * SOLR-2741: Bugs in facet range display in trunk (janhoy) |
---|
| 412 | |
---|
| 413 | * SOLR-1908: Fixed SignatureUpdateProcessor to fail to initialize on |
---|
| 414 | invalid config. Specifically: a signatureField that does not exist, |
---|
| 415 | or overwriteDupes=true with a signatureField that is not indexed. |
---|
| 416 | (hossman) |
---|
| 417 | |
---|
| 418 | * SOLR-1824: IndexSchema will now fail to initialize if there is a |
---|
| 419 | problem initializing one of the fields or field types. (hossman) |
---|
| 420 | |
---|
| 421 | * SOLR-1928: TermsComponent didn't correctly break ties for non-text |
---|
| 422 | fields sorted by count. (yonik) |
---|
| 423 | |
---|
| 424 | * SOLR-2107: MoreLikeThisHandler doesn't work with alternate qparsers. (yonik) |
---|
| 425 | |
---|
| 426 | * SOLR-2108: Fixed false positives when using wildcard queries on fields with reversed |
---|
| 427 | wildcard support. For example, a query of *zemog* would match documents that contain |
---|
| 428 | 'gomez'. (Landon Kuhn via Robert Muir) |
---|
| 429 | |
---|
| 430 | * SOLR-1962: SolrCore#initIndex should not use a mix of indexPath and newIndexPath (Mark Miller) |
---|
| 431 | |
---|
| 432 | * SOLR-2275: fix DisMax 'mm' parsing to be tolerant of whitespace |
---|
| 433 | (Erick Erickson via hossman) |
---|
| 434 | |
---|
| 435 | * SOLR-2193, SOLR-2565, SOLR-2651: SolrCores now properly share IndexWriters across SolrCore reloads. |
---|
| 436 | (Mark Miller, Robert Muir) |
---|
| 437 | Additional Work: |
---|
| 438 | SOLR-2705: On reload, IndexWriterProvider holds onto the initial SolrCore it was created with. |
---|
| 439 | (Yury Kats, Mark Miller) |
---|
| 440 | |
---|
| 441 | * SOLR-2682: Remove addException() in SimpleFacet. FacetComponent no longer catches and embeds |
---|
| 442 | exceptions occurred during facet processing, it throws HTTP 400 or 500 exceptions instead. (koji) |
---|
| 443 | |
---|
| 444 | * SOLR-2654: Directorys used by a SolrCore are now closed when they are no longer used. |
---|
| 445 | (Mark Miller) |
---|
| 446 | |
---|
| 447 | * SOLR-2854: Now load URL content stream data (via stream.url) when called for during request handling, |
---|
| 448 | rather than loading URL content streams automatically regardless of use. |
---|
| 449 | (David Smiley and Ryan McKinley via ehatcher) |
---|
| 450 | |
---|
| 451 | * SOLR-2829: Fix problem with false-positives due to incorrect |
---|
| 452 | equals methods. (Yonik Seeley, Hossman, Erick Erickson. |
---|
| 453 | Marc Tinnemeyer caught the bug) |
---|
| 454 | |
---|
| 455 | * SOLR-2848: Removed 'instanceof AbstractLuceneSpellChecker' hacks from distributed spellchecking code, |
---|
| 456 | and added a merge() method to SolrSpellChecker instead. Previously if you extended SolrSpellChecker |
---|
| 457 | your spellchecker would not work in distributed fashion. (James Dyer via rmuir) |
---|
| 458 | |
---|
| 459 | * SOLR-2509: StringIndexOutOfBoundsException in the spellchecker collate when the term contains |
---|
| 460 | a hyphen. (Thomas Gambier caught the bug, Steffen Godskesen did the patch, via Erick Erickson) |
---|
| 461 | |
---|
| 462 | * SOLR-1730: Made it clearer when a core failed to load as well as better logging when the |
---|
| 463 | QueryElevationComponent fails to properly initialize (gsingers) |
---|
| 464 | |
---|
| 465 | * SOLR-1520: QueryElevationComponent now supports non-string ids (gsingers) |
---|
| 466 | |
---|
| 467 | * SOLR-3037: When using binary format in solrj the codec screws up parameters |
---|
| 468 | (Sami Siren, Jörg Maier via yonik) |
---|
| 469 | |
---|
| 470 | * SOLR-3062: A join in the main query was not respecting any filters pushed |
---|
| 471 | down to it via acceptDocs since LUCENE-1536. (Mike Hugo, yonik) |
---|
| 472 | |
---|
| 473 | * SOLR-3214: If you use multiple fl entries rather than a comma separated list, all but the first |
---|
| 474 | entry can be ignored if you are using distributed search. (Tomas Fernandez Lobbe via Mark Miller) |
---|
| 475 | |
---|
| 476 | * SOLR-3352: eDismax: pf2 should kick in for a query with 2 terms (janhoy) |
---|
| 477 | |
---|
| 478 | * SOLR-3361: ReplicationHandler "maxNumberOfBackups" doesn't work if backups are triggered on commit |
---|
| 479 | (James Dyer, Tomas Fernandez Lobbe) |
---|
| 480 | |
---|
| 481 | * SOLR-2605: fixed tracking of the 'defaultCoreName' in CoreContainer so that |
---|
| 482 | CoreAdminHandler could return consistent information regardless of wether |
---|
| 483 | there is a a default core name or not. (steffkes, hossman) |
---|
| 484 | |
---|
| 485 | * SOLR-3370: fixed CSVResponseWriter to respect globs in the 'fl' param |
---|
| 486 | (Keith Fligg via hossman) |
---|
| 487 | |
---|
| 488 | * SOLR-3436: Group count incorrect when not all shards are queried in the second |
---|
| 489 | pass. (Francois Perron, Martijn van Groningen) |
---|
| 490 | |
---|
| 491 | * SOLR-3454: Exception when using result grouping with main=true and using |
---|
| 492 | wt=javabin. (Ludovic Boutros, Martijn van Groningen) |
---|
| 493 | |
---|
| 494 | * SOLR-3446: Better errors when PatternTokenizerFactory is configured with |
---|
| 495 | an invalid pattern, and include the 'name' whenever possible in plugin init |
---|
| 496 | error messages. (hossman) |
---|
| 497 | |
---|
| 498 | * LUCENE-4075: Cleaner path usage in TestXPathEntityProcessor |
---|
| 499 | (Greg Bowyer via hossman) |
---|
| 500 | |
---|
| 501 | * SOLR-2923: IllegalArgumentException when using useFilterForSortedQuery on an |
---|
| 502 | empty index. (Adrien Grand via Mark Miller) |
---|
| 503 | |
---|
| 504 | * SOLR-2352: Fixed TermVectorComponent so that it will not fail if the fl |
---|
| 505 | param contains globs or psuedo-fields (hossman) |
---|
| 506 | |
---|
| 507 | * SOLR-3541: add missing solrj dependencies to binary packages. |
---|
| 508 | (Thijs Vonk via siren) |
---|
| 509 | |
---|
| 510 | * SOLR-3522: fixed parsing of the 'literal()' function (hossman) |
---|
| 511 | |
---|
| 512 | * SOLR-3548: Fixed a bug in the cachability of queries using the {!join} |
---|
| 513 | parser or the strdist() function, as well as some minor improvements to |
---|
| 514 | the hashCode implementation of {!bbox} and {!geofilt} queries. |
---|
| 515 | (hossman) |
---|
| 516 | |
---|
| 517 | Other Changes |
---|
| 518 | ---------------------- |
---|
| 519 | |
---|
| 520 | * SOLR-1846: Eliminate support for the abortOnConfigurationError |
---|
| 521 | option. It has never worked very well, and in recent versions of |
---|
| 522 | Solr hasn't worked at all. (hossman) |
---|
| 523 | |
---|
| 524 | * SOLR-1889: The default logic for the 'mm' param of DismaxQParser and |
---|
| 525 | ExtendedDismaxQParser has been changed to be determined based on the |
---|
| 526 | effective value of the 'q.op' param (hossman) |
---|
| 527 | |
---|
| 528 | * SOLR-1946: Misc improvements to the SystemInfoHandler: /admin/system |
---|
| 529 | (hossman) |
---|
| 530 | |
---|
| 531 | * SOLR-2289: Tweak spatial coords for example docs so they are a bit |
---|
| 532 | more spread out (Erick Erickson via hossman) |
---|
| 533 | |
---|
| 534 | * SOLR-2288: Small tweaks to eliminate compiler warnings. primarily |
---|
| 535 | using Generics where applicable in method/object declatations, and |
---|
| 536 | adding @SuppressWarnings("unchecked") when appropriate (hossman) |
---|
| 537 | |
---|
| 538 | * SOLR-2375: Suggester Lookup implementations now store trie data |
---|
| 539 | and load it back on init. This means that large tries don't have to be |
---|
| 540 | rebuilt on every commit or core reload. (ab) |
---|
| 541 | |
---|
| 542 | * SOLR-2413: Support for returning multi-valued fields w/o <arr> tag |
---|
| 543 | in the XMLResponseWriter was removed. XMLResponseWriter only |
---|
| 544 | no longer work with values less then 2.2 (ryan) |
---|
| 545 | |
---|
| 546 | * SOLR-2423: FieldType argument changed from String to Object |
---|
| 547 | Conversion from SolrInputDocument > Object > Fieldable is now managed |
---|
| 548 | by FieldType rather then DocumentBuilder. (ryan) |
---|
| 549 | |
---|
| 550 | * SOLR-2461: QuerySenderListener and AbstractSolrEventListener are |
---|
| 551 | now public (hossman) |
---|
| 552 | |
---|
| 553 | * LUCENE-2995: Moved some spellchecker and suggest APIs to modules/suggest: |
---|
| 554 | HighFrequencyDictionary, SortedIterator, TermFreqIterator, and the |
---|
| 555 | suggester APIs and implementations. (rmuir) |
---|
| 556 | |
---|
| 557 | * SOLR-2576: Remove deprecated SpellingResult.add(Token, int). |
---|
| 558 | (James Dyer via rmuir) |
---|
| 559 | |
---|
| 560 | * LUCENE-3232: Moved MutableValue classes to new 'common' module. (Chris Male) |
---|
| 561 | |
---|
| 562 | * LUCENE-2883: FunctionQuery, DocValues (and its impls), ValueSource (and its |
---|
| 563 | impls) and BoostedQuery have been consolidated into the queries module. They |
---|
| 564 | can now be found at o.a.l.queries.function. |
---|
| 565 | |
---|
| 566 | * SOLR-2027: FacetField.getValues() now returns an empty list if there are no |
---|
| 567 | values, instead of null (Chris Male) |
---|
| 568 | |
---|
| 569 | * SOLR-1825: SolrQuery.addFacetQuery now enables facets automatically, like |
---|
| 570 | addFacetField (Chris Male) |
---|
| 571 | |
---|
| 572 | * SOLR-2663: FieldTypePluginLoader has been refactored out of IndexSchema |
---|
| 573 | and made public. (hossman) |
---|
| 574 | |
---|
| 575 | * SOLR-2331,SOLR-2691: Refactor CoreContainer's SolrXML serialization code and improve testing |
---|
| 576 | (Yury Kats, hossman, Mark Miller) |
---|
| 577 | |
---|
| 578 | * SOLR-2698: Enhance CoreAdmin STATUS command to return index size. |
---|
| 579 | (Yury Kats, hossman, Mark Miller) |
---|
| 580 | |
---|
| 581 | * SOLR-2654: The same Directory instance is now always used across a SolrCore so that |
---|
| 582 | it's easier to add other DirectoryFactory's without static caching hacks. |
---|
| 583 | (Mark Miller) |
---|
| 584 | |
---|
| 585 | * LUCENE-3286: 'luke' ant target has been disabled due to incompatibilities with XML |
---|
| 586 | queryparser location (Chris Male) |
---|
| 587 | |
---|
| 588 | * SOLR-1897: The data dir from the core descriptor should override the data dir from |
---|
| 589 | the solrconfig.xml rather than the other way round. (Mark Miller) |
---|
| 590 | |
---|
| 591 | * SOLR-2756: Maven configuration: Excluded transitive stax:stax-api dependency |
---|
| 592 | from org.codehaus.woodstox:wstx-asl dependency. (David Smiley via Steve Rowe) |
---|
| 593 | |
---|
| 594 | * SOLR-2588: Moved VelocityResponseWriter back to contrib module in order to |
---|
| 595 | remove it as a mandatory core dependency. (ehatcher) |
---|
| 596 | |
---|
| 597 | * SOLR-2862: More explicit lexical resources location logged if Carrot2 clustering |
---|
| 598 | extension is used. Fixed solr. impl. of IResource and IResourceLookup. (Dawid Weiss) |
---|
| 599 | |
---|
| 600 | * SOLR-1123: Changed JSONResponseWriter to now use application/json as its Content-Type |
---|
| 601 | by default. However the Content-Type can be overwritten and is set to text/plain in |
---|
| 602 | the example configuration. (Uri Boness, Chris Male) |
---|
| 603 | |
---|
| 604 | * SOLR-2607: Removed deprecated client/ruby directory, which included solr-ruby and flare. |
---|
| 605 | (ehatcher) |
---|
| 606 | |
---|
| 607 | * Solr-3032: logOnce from SolrException logOnce and all the supporting |
---|
| 608 | structure is gone. abortOnConfugrationError is also gone as it is no longer referenced. |
---|
| 609 | Errors should be caught and logged at the top-most level or logged and NOT propagated up the |
---|
| 610 | chain. (Erick Erickson) |
---|
| 611 | |
---|
| 612 | * SOLR-2105: Remove support for deprecated "update.processor" (since 3.2), in favor of |
---|
| 613 | "update.chain" (janhoy) |
---|
| 614 | |
---|
| 615 | * SOLR-3005: Default QueryResponseWriters are now initialized via init() with an empty |
---|
| 616 | NamedList. (Gasol Wu, Chris Male) |
---|
| 617 | |
---|
| 618 | * SOLR-2607: Removed obsolete client/ folder (ehatcher, Eric Pugh, janhoy) |
---|
| 619 | |
---|
| 620 | * SOLR-3202, SOLR-3244: Dropping Support for JSP. New Admin UI is all client side |
---|
| 621 | (ryan, Aliaksandr Zhuhrou, Uwe Schindler) |
---|
| 622 | |
---|
| 623 | * SOLR-3159: Upgrade example and tests to run with Jetty 8 (ryan) |
---|
| 624 | |
---|
| 625 | * SOLR-3254: Upgrade Solr to Tika 1.1 (janhoy) |
---|
| 626 | |
---|
| 627 | * SOLR-3329: Dropped getSourceID() from SolrInfoMBean and using |
---|
| 628 | getClass().getPackage().getSpecificationVersion() for Version. (ryan) |
---|
| 629 | |
---|
| 630 | * SOLR-3302: Upgraded SLF4j to version 1.6.4 (hossman) |
---|
| 631 | |
---|
| 632 | * SOLR-3322: Add more context to IndexReaderFactory.newReader (ab) |
---|
| 633 | |
---|
| 634 | * SOLR-3343: Moved FastWriter, FileUtils, RegexFileFilter, RTimer and SystemIdResolver |
---|
| 635 | from org.apache.solr.common to org.apache.solr.util (Chris Male) |
---|
| 636 | |
---|
| 637 | * SOLR-3357: ResourceLoader.newInstance now accepts a Class representation of the expected |
---|
| 638 | instance type (Chris Male) |
---|
| 639 | |
---|
| 640 | * SOLR-3388: HTTP caching is now disabled by default for RequestUpdateHandlers. (ryan) |
---|
| 641 | |
---|
| 642 | * SOLR-3309: web.xml now specifies metadata-complete=true (which requires |
---|
| 643 | Servlet 2.5) to prevent servlet containers from scanning class annotations |
---|
| 644 | on startup. This allows for faster startup times on some servlet containers. |
---|
| 645 | (Bill Bell, hossman) |
---|
| 646 | |
---|
| 647 | * SOLR-1893: Refactored some common code from LRUCache and FastLRUCache into |
---|
| 648 | SolrCacheBase (Tomás Fernández Löbbe via hossman) |
---|
| 649 | |
---|
| 650 | * SOLR-3403: Deprecated Analysis Factories now log their own deprecation messages. |
---|
| 651 | No logging support is provided by Factory parent classes. (Chris Male) |
---|
| 652 | |
---|
| 653 | * SOLR-1258: PingRequestHandler is now directly configured with a |
---|
| 654 | "healthcheckFile" instead of looking for the legacy |
---|
| 655 | <admin><healthcheck/></admin> syntax. Filenames specified as relative |
---|
| 656 | paths have been fixed so that they are resolved against the data dir |
---|
| 657 | instead of the CWD of the java process. (hossman) |
---|
| 658 | |
---|
| 659 | * SOLR-3083: JMX beans now report Numbers as numeric values rather then String |
---|
| 660 | (Tagged Siteops, Greg Bowyer via ryan) |
---|
| 661 | |
---|
| 662 | * SOLR-2796: Due to low level changes to support SolrCloud, the uniqueKey |
---|
| 663 | field can no longer be populated via <copyField/> or <field default=...> |
---|
| 664 | in the schema.xml. |
---|
| 665 | |
---|
| 666 | * SOLR-3534: The Dismax and eDismax query parsers will fall back on the 'df' parameter |
---|
| 667 | when 'qf' is absent. And if neither is present nor the schema default search field |
---|
| 668 | then an exception will be thrown now. (dsmiley) |
---|
| 669 | |
---|
| 670 | Documentation |
---|
| 671 | ---------------------- |
---|
| 672 | |
---|
| 673 | * SOLR-2232: Improved README info on solr.solr.home in examples |
---|
| 674 | (Eric Pugh and hossman) |
---|
| 675 | |
---|
| 676 | ================== 3.6.0 ================== |
---|
| 677 | |
---|
| 678 | Upgrading from Solr 3.5 |
---|
| 679 | ---------------------- |
---|
| 680 | * SOLR-2983: As a consequence of moving the code which sets a MergePolicy from SolrIndexWriter to SolrIndexConfig, |
---|
| 681 | (custom) MergePolicies should now have an empty constructor; thus an IndexWriter should not be passed as constructor |
---|
| 682 | parameter but instead set using the setIndexWriter() method. |
---|
| 683 | |
---|
| 684 | * As doGet() methods in SimplePostTool was changed to static, the client applications of this |
---|
| 685 | class need to be recompiled. |
---|
| 686 | |
---|
| 687 | * In Solr version 3.5 and earlier, HTMLStripCharFilter had known bugs in the |
---|
| 688 | character offsets it provided, triggering e.g. exceptions in highlighting. |
---|
| 689 | HTMLStripCharFilter has been re-implemented, addressing this and other |
---|
| 690 | issues. See the entry for LUCENE-3690 in the Bug Fixes section below for a |
---|
| 691 | detailed list of changes. For people who depend on the behavior of |
---|
| 692 | HTMLStripCharFilter in Solr version 3.5 and earlier: the old implementation |
---|
| 693 | (bugs and all) is preserved as LegacyHTMLStripCharFilter. |
---|
| 694 | |
---|
| 695 | * As of Solr 3.6, the <indexDefaults> and <mainIndex> sections of solrconfig.xml are deprecated |
---|
| 696 | and replaced with a new <indexConfig> section. Read more in SOLR-1052 below. |
---|
| 697 | |
---|
| 698 | * SOLR-3040: The DIH's admin UI (dataimport.jsp) now requires DIH request handlers to start with |
---|
| 699 | a '/'. (dsmiley) |
---|
| 700 | |
---|
| 701 | * SOLR-3161: <requestDispatcher handleSelect="false"> is now the default. An existing config will |
---|
| 702 | probably work as-is because handleSelect was explicitly enabled in default configs. HandleSelect |
---|
| 703 | makes /select work as well as enables the 'qt' parameter. Instead, consider explicitly |
---|
| 704 | configuring /select as is done in the example solrconfig.xml, and register your other search |
---|
| 705 | handlers with a leading '/' which is a recommended practice. (David Smiley, Erik Hatcher) |
---|
| 706 | |
---|
| 707 | * SOLR-3161: Don't use the 'qt' parameter with a leading '/'. It probably won't work in 4.0 |
---|
| 708 | and it's now limited in 3.6 to SearchHandler subclasses that aren't lazy-loaded. |
---|
| 709 | |
---|
| 710 | * Bugs found and fixed in the SignatureUpdateProcessor that previously caused |
---|
| 711 | some documents to produce the same signature even when the configured fields |
---|
| 712 | contained distinct (non-String) values. Users of SignatureUpdateProcessor |
---|
| 713 | are strongly advised that they should re-index as document signatures may |
---|
| 714 | have now changed. (see SOLR-3200 & SOLR-3226 for details) |
---|
| 715 | |
---|
| 716 | * SOLR-2724: Specifying <defaultSearchField> and <solrQueryParser defaultOperator="..."/> in |
---|
| 717 | schema.xml is now considered deprecated. Instead you are encouraged to specify these via the "df" |
---|
| 718 | and "q.op" parameters in your request handler definition. (David Smiley) |
---|
| 719 | |
---|
| 720 | New Features |
---|
| 721 | ---------------------- |
---|
| 722 | * SOLR-2020: Add Java client that uses Apache Http Components http client (4.x). |
---|
| 723 | (Chantal Ackermann, Ryan McKinley, Yonik Seeley, siren) |
---|
| 724 | |
---|
| 725 | * SOLR-2854: Now load URL content stream data (via stream.url) when called for during request handling, |
---|
| 726 | rather than loading URL content streams automatically regardless of use. |
---|
| 727 | (David Smiley and Ryan McKinley via ehatcher) |
---|
| 728 | |
---|
| 729 | * SOLR-2904: BinaryUpdateRequestHandler should be able to accept multiple update requests from |
---|
| 730 | a stream (shalin) |
---|
| 731 | |
---|
| 732 | * SOLR-1565: StreamingUpdateSolrServer supports RequestWriter API and therefore, javabin update |
---|
| 733 | format (shalin) |
---|
| 734 | |
---|
| 735 | * SOLR-2438 added MultiTermAwareComponent to the various classes to allow automatic lowercasing |
---|
| 736 | for multiterm queries (wildcards, regex, prefix, range, etc). You can now optionally specify a |
---|
| 737 | "multiterm" analyzer in our schema.xml, but Solr should "do the right thing" if you don't |
---|
| 738 | specify <analyzer type="multiterm"> (Pete Sturge Erick Erickson, Mentoring from Seeley and Muir) |
---|
| 739 | |
---|
| 740 | * SOLR-2919: Added support for localized range queries when the analysis chain uses |
---|
| 741 | CollationKeyFilter or ICUCollationKeyFilter. (Michael Sokolov, rmuir) |
---|
| 742 | |
---|
| 743 | * SOLR-2982: Added BeiderMorseFilterFactory for Beider-Morse (BMPM) phonetic encoder. Upgrades |
---|
| 744 | commons-codec to version 1.6 (Brooke Schreier Ganz, rmuir) |
---|
| 745 | |
---|
| 746 | * SOLR-1843: A new "rootName" attribute is now available when |
---|
| 747 | configuring <jmx/> in solrconfig.xml. If this attribute is set, |
---|
| 748 | Solr will use it as the root name for all MBeans Solr exposes via |
---|
| 749 | JMX. The default root name is "solr" followed by the core name. |
---|
| 750 | (Constantijn Visinescu, hossman) |
---|
| 751 | |
---|
| 752 | * SOLR-2906: Added LFU cache options to Solr. (Shawn Heisey via Erick Erickson) |
---|
| 753 | |
---|
| 754 | * SOLR-3036: Ability to specify overwrite=false on the URL for XML updates. |
---|
| 755 | (Sami Siren via yonik) |
---|
| 756 | |
---|
| 757 | * SOLR-2603: Add the encoding function for alternate fields in highlighting. |
---|
| 758 | (Massimo Schiavon, koji) |
---|
| 759 | |
---|
| 760 | * SOLR-1729: Evaluation of NOW for date math is done only once per request for |
---|
| 761 | consistency, and is also propagated to shards in distributed search. |
---|
| 762 | Adding a parameter NOW=<time_in_ms> to the request will override the |
---|
| 763 | current time. (Peter Sturge, yonik, Simon Willnauer) |
---|
| 764 | |
---|
| 765 | * SOLR-1709: Distributed support for Date and Numeric Range Faceting |
---|
| 766 | (Peter Sturge, David Smiley, hossman, Simon Willnauer) |
---|
| 767 | |
---|
| 768 | * SOLR-3054, LUCENE-3671: Add TypeTokenFilterFactory that creates TypeTokenFilter |
---|
| 769 | that filters tokens based on their TypeAttribute. (Tommaso Teofili via |
---|
| 770 | Uwe Schindler) |
---|
| 771 | |
---|
| 772 | * LUCENE-3305, SOLR-3056: Added Kuromoji morphological analyzer for Japanese. |
---|
| 773 | See the 'text_ja' fieldtype in the example to get started. |
---|
| 774 | (Christian Moen, Masaru Hasegawa via Robert Muir) |
---|
| 775 | |
---|
| 776 | * SOLR-1860: StopFilterFactory, CommonGramsFilterFactory, and |
---|
| 777 | CommonGramsQueryFilterFactory can optionally read stopwords in Snowball |
---|
| 778 | format (specify format="snowball"). (Robert Muir) |
---|
| 779 | |
---|
| 780 | * SOLR-3105: ElisionFilterFactory optionally allows the parameter |
---|
| 781 | ignoreCase (default=false). (Robert Muir) |
---|
| 782 | |
---|
| 783 | * LUCENE-3714: Add WFSTLookupFactory, a suggester that uses a weighted FST |
---|
| 784 | for more fine-grained suggestions. (Mike McCandless, Dawid Weiss, Robert Muir) |
---|
| 785 | |
---|
| 786 | * SOLR-3143: Add SuggestQueryConverter, a QueryConverter intended for |
---|
| 787 | auto-suggesters. (Robert Muir) |
---|
| 788 | |
---|
| 789 | * SOLR-3033: ReplicationHandler's backup command now supports a 'maxNumberOfBackups' |
---|
| 790 | init param that can be used to delete all but the most recent N backups. (Torsten Krah, James Dyer) |
---|
| 791 | |
---|
| 792 | * SOLR-2202: Currency FieldType, whith support for currencies and exchange rates |
---|
| 793 | (Greg Fodor & Andrew Morrison via janhoy, rmuir, Uwe Schindler) |
---|
| 794 | |
---|
| 795 | * SOLR-3026: eDismax: Locking down which fields can be explicitly queried (user fields aka uf) |
---|
| 796 | (janhoy, hossmann, Tomás Fernández Löbbe) |
---|
| 797 | |
---|
| 798 | * SOLR-2826: URLClassify Update Processor (janhoy) |
---|
| 799 | |
---|
| 800 | * SOLR-2764: Create a NorwegianLightStemmer and NorwegianMinimalStemmer (janhoy) |
---|
| 801 | |
---|
| 802 | * SOLR-3221: Added the ability to directly configure aspects of the concurrency |
---|
| 803 | and thread-pooling used within distributed search in solr. This allows for finer |
---|
| 804 | grained controlled and can be tuned by end users to target their own specific |
---|
| 805 | requirements. This builds on the work of the HttpCommComponent and uses the same configuration |
---|
| 806 | block to configure the thread pool. The default configuration has |
---|
| 807 | the same behaviour as solr 3.5, favouring throughput over latency. More |
---|
| 808 | information can be found on the wiki (http://wiki.apache.org/solr/SolrConfigXml) (Greg Bowyer) |
---|
| 809 | |
---|
| 810 | * SOLR-2001: The query component will substitute an empty query that matches |
---|
| 811 | no documents if the query parser returns null. This also prevents an |
---|
| 812 | exception from being thrown by the default parser if "q" is missing. (yonik) |
---|
| 813 | SOLR-435: if q is "" then it's also acceptable. (dsmiley, hoss) |
---|
| 814 | |
---|
| 815 | Optimizations |
---|
| 816 | ---------------------- |
---|
| 817 | * SOLR-1931: Speedup for LukeRequestHandler and admin/schema browser. New parameter |
---|
| 818 | reportDocCount defaults to 'false'. Old behavior still possible by specifying this as 'true' |
---|
| 819 | (Erick Erickson) |
---|
| 820 | |
---|
| 821 | * SOLR-3012: Move System.getProperty("type") in postData() to main() and add type argument so that |
---|
| 822 | the client applications of SimplePostTool can set content type via method argument. (koji) |
---|
| 823 | |
---|
| 824 | * SOLR-2888: FSTSuggester refactoring: internal storage is now UTF-8, |
---|
| 825 | external sorting (on disk) prevents OOMs even with large data sets |
---|
| 826 | (the bottleneck is now FST construction), code cleanups and API cleanups. |
---|
| 827 | (Dawid Weiss, Robert Muir) |
---|
| 828 | |
---|
| 829 | Bug Fixes |
---|
| 830 | ---------------------- |
---|
| 831 | * SOLR-3187 SystemInfoHandler leaks filehandles (siren) |
---|
| 832 | |
---|
| 833 | * LUCENE-3820: Fixed invalid position indexes by reimplementing PatternReplaceCharFilter. |
---|
| 834 | This change also drops real support for boundary characters -- all input is prebuffered |
---|
| 835 | for pattern matching. (Dawid Weiss) |
---|
| 836 | |
---|
| 837 | * SOLR-3068: Fixed NPE in ThreadDumpHandler (siren) |
---|
| 838 | |
---|
| 839 | * SOLR-2912: Fixed File descriptor leak in ShowFileRequestHandler (Michael Ryan, shalin) |
---|
| 840 | |
---|
| 841 | * SOLR-2819: Improved speed of parsing hex entities in HTMLStripCharFilter |
---|
| 842 | (Bernhard Berger, hossman) |
---|
| 843 | |
---|
| 844 | * SOLR-2509: StringIndexOutOfBoundsException in the spellchecker collate when the term contains |
---|
| 845 | a hyphen. (Thomas Gambier caught the bug, Steffen Godskesen did the patch, via Erick Erickson) |
---|
| 846 | |
---|
| 847 | * SOLR-2955: Fixed IllegalStateException when querying with group.sort=score desc in sharded |
---|
| 848 | environment. (Steffen Elberg Godskesen, Martijn van Groningen) |
---|
| 849 | |
---|
| 850 | * SOLR-2956: Fixed inconsistencies in the flags (and flag key) reported by |
---|
| 851 | the LukeRequestHandler (hossman) |
---|
| 852 | |
---|
| 853 | * SOLR-1730: Made it clearer when a core failed to load as well as better logging when the |
---|
| 854 | QueryElevationComponent fails to properly initialize (gsingers) |
---|
| 855 | |
---|
| 856 | * SOLR-1520: QueryElevationComponent now supports non-string ids (gsingers) |
---|
| 857 | |
---|
| 858 | * SOLR-3024: Fixed JSONTestUtil.matchObj, in previous releases it was not |
---|
| 859 | respecting the 'delta' arg (David Smiley via hossman) |
---|
| 860 | |
---|
| 861 | * SOLR-2542: Fixed DIH Context variables which were broken for all scopes other |
---|
| 862 | then SCOPE_ENTITY (Linbin Chen & Frank Wesemann via hossman) |
---|
| 863 | |
---|
| 864 | * SOLR-3042: Fixed Maven Jetty plugin configuration. |
---|
| 865 | (David Smiley via Steve Rowe) |
---|
| 866 | |
---|
| 867 | * SOLR-2970: CSV ResponseWriter returns fields defined as stored=false in schema (janhoy) |
---|
| 868 | |
---|
| 869 | * LUCENE-3690, LUCENE-2208, SOLR-882, SOLR-42: Re-implemented |
---|
| 870 | HTMLStripCharFilter as a JFlex-generated scanner. See below for a list |
---|
| 871 | of bug fixes and other changes. To get the same behavior as |
---|
| 872 | HTMLStripCharFilter in Solr version 3.5 and earlier (including the bugs), |
---|
| 873 | use LegacyHTMLStripCharFilter, which is the previous implementation. |
---|
| 874 | |
---|
| 875 | Behavior changes from the previous version: |
---|
| 876 | |
---|
| 877 | - Known offset bugs are fixed. |
---|
| 878 | - The "Mark invalid" exceptions reported in SOLR-1283 are no longer |
---|
| 879 | triggered (the bug is still present in LegacyHTMLStripCharFilter). |
---|
| 880 | - The character entity "'" is now always properly decoded. |
---|
| 881 | - More cases of <script> tags are now properly stripped. |
---|
| 882 | - CDATA sections are now handled properly. |
---|
| 883 | - Valid tag name characters now include the supplementary Unicode characters |
---|
| 884 | from Unicode character classes [:ID_Start:] and [:ID_Continue:]. |
---|
| 885 | - Uppercase character entities """, "©", ">", "<", "®", |
---|
| 886 | and "&" are now recognized and handled as if they were in lowercase. |
---|
| 887 | - The REPLACEMENT CHARACTER U+FFFD is now used to replace numeric character |
---|
| 888 | entities for unpaired UTF-16 low and high surrogates (in the range |
---|
| 889 | [U+D800-U+DFFF]). |
---|
| 890 | - Properly paired numeric character entities for UTF-16 surrogates are now |
---|
| 891 | converted to the corresponding code units. |
---|
| 892 | - Opening tags with unbalanced quotation marks are now properly stripped. |
---|
| 893 | - Literal "<" and ">" characters in opening tags, regardless of whether they |
---|
| 894 | appear inside quotation marks, now inhibit recognition (and stripping) of |
---|
| 895 | the tags. The only exception to this is for values of event-handler |
---|
| 896 | attributes, e.g. "onClick", "onLoad", "onSelect". |
---|
| 897 | - A newline '\n' is substituted instead of a space for stripped HTML markup. |
---|
| 898 | - Nothing is substituted for opening and closing inline tags - they are |
---|
| 899 | simply removed. The list of inline tags is (case insensitively): <a>, |
---|
| 900 | <abbr>, <acronym>, <b>, <basefont>, <bdo>, <big>, <cite>, <code>, <dfn>, |
---|
| 901 | <em>, <font>, <i>, <img>, <input>, <kbd>, <label>, <q>, <s>, <samp>, |
---|
| 902 | <select>, <small>, <span>, <strike>, <strong>, <sub>, <sup>, <textarea>, |
---|
| 903 | <tt>, <u>, and <var>. |
---|
| 904 | - HTMLStripCharFilterFactory now handles HTMLStripCharFilter's "escapedTags" |
---|
| 905 | feature: opening and closing tags with the given names, including any |
---|
| 906 | attributes and their values, are left intact in the output. |
---|
| 907 | (Steve Rowe) |
---|
| 908 | |
---|
| 909 | * LUCENE-3717: Fixed offset bugs in TrimFilter, WordDelimiterFilter, and |
---|
| 910 | HyphenatedWordsFilter where they would create invalid offsets in |
---|
| 911 | some situations, leading to problems in highlighting. (Robert Muir) |
---|
| 912 | |
---|
| 913 | * SOLR-2280: commitWithin ignored for a delete query (Juan Grande via janhoy) |
---|
| 914 | |
---|
| 915 | * SOLR-3073: Fixed 'Invalid UUID string' error when having an UUID field as |
---|
| 916 | the unique key and executing a distributed grouping request. (Devon Krisman, Martijn van Groningen) |
---|
| 917 | |
---|
| 918 | * SOLR-3084: Fixed initialization error when using |
---|
| 919 | <queryResponseWriter default="true" ... /> (Bernd Fehling and hossman) |
---|
| 920 | |
---|
| 921 | * SOLR-3109: Fixed numerous redundant shard requests when using distributed grouping. |
---|
| 922 | (rblack via Martijn van Groningen) |
---|
| 923 | |
---|
| 924 | * SOLR-3052: Fixed typo in distributed grouping parameters. |
---|
| 925 | (Martijn van Groningen, Grant Ingersoll) |
---|
| 926 | |
---|
| 927 | * SOLR-2909: Add support for ResourceLoaderAware tokenizerFactories in synonym |
---|
| 928 | filter factories. (Tom Klonikowski, Jun Ohtani via Koji Sekiguchi) |
---|
| 929 | |
---|
| 930 | * SOLR-3168: ReplicationHandler "numberToKeep" & "maxNumberOfBackups" parameters |
---|
| 931 | would keep only 1 backup, even if more than 1 was specified (Neil Hooey, James Dyer) |
---|
| 932 | |
---|
| 933 | * SOLR-3009: hitGrouped.vm isn't shipped with 3.x (ehatcher, janhoy) |
---|
| 934 | |
---|
| 935 | * SOLR-3195: timeAllowed is ignored for grouping queries |
---|
| 936 | (Russell Black via Martijn van Groningen) |
---|
| 937 | |
---|
| 938 | * SOLR-2124: Do not log stack traces for "Service Disabled" / 503 Exceptions (PingRequestHandler, etc) |
---|
| 939 | (James Dyer, others) |
---|
| 940 | |
---|
| 941 | * SOLR-3260: DataImportHandler: ScriptTransformer gives better error messages when |
---|
| 942 | problems arise on initalization (no Script Engine, invalid script, etc). (James Dyer) |
---|
| 943 | |
---|
| 944 | * SOLR-2959: edismax now respects the magic fields '_val_' and '_query_' |
---|
| 945 | (Michael Watts, hossman) |
---|
| 946 | |
---|
| 947 | * SOLR-3074: fix SolrPluginUtils.docListToSolrDocumentList to respect the |
---|
| 948 | list of fields specified. This fix also deprecates |
---|
| 949 | DocumentBuilder.loadStoredFields which is not used anywhere in Solr, |
---|
| 950 | and was fundamentally broken/bizarre. |
---|
| 951 | (hossman, Ahmet Arslan) |
---|
| 952 | |
---|
| 953 | * SOLR-3264: Fix CoreContainer and SolrResourceLoader logging to be more |
---|
| 954 | clear about when SolrCores are being created, and stop misleading people |
---|
| 955 | about SolrCore instanceDir's being the "Solr Home Dir" (hossman) |
---|
| 956 | |
---|
| 957 | * SOLR-3046: Fix whitespace typo in DIH response "Time taken" (hossman) |
---|
| 958 | |
---|
| 959 | * SOLR-3261: Fix edismax to respect query operators when literal colons |
---|
| 960 | are used in query string. (Juan Grande via hossman) |
---|
| 961 | |
---|
| 962 | * SOLR-3226: Fix SignatureUpdateProcessor to no longer ignore non-String |
---|
| 963 | field values (Spyros Kapnissis, hossman) |
---|
| 964 | |
---|
| 965 | * SOLR-3200: Fix SignatureUpdateProcessor "all fields" mode to use all |
---|
| 966 | fields of each document instead of the fields specified by the first |
---|
| 967 | document indexed (Spyros Kapnissis via hossman) |
---|
| 968 | |
---|
| 969 | * SOLR-3316: Distributed grouping failed when rows parameter was set to 0 and sometimes returned a wrong |
---|
| 970 | hit count as matches. (Cody Young, Martijn van Groningen) |
---|
| 971 | |
---|
| 972 | Other Changes |
---|
| 973 | ---------------------- |
---|
| 974 | * SOLR-2922: Upgrade commons-io and commons-lang to 2.1 and 2.6, respectively. (koji) |
---|
| 975 | |
---|
| 976 | * SOLR-2920: Refactor frequent conditional use of DefaultSolrParams and |
---|
| 977 | AppendedSolrParams into factory methods. |
---|
| 978 | (David Smiley via hossman) |
---|
| 979 | |
---|
| 980 | * SOLR-3032: Deprecate logOnce from SolrException logOnce and all the supporting |
---|
| 981 | structure will disappear in 4.0. Errors should be caught and logged at the |
---|
| 982 | top-most level or logged and NOT propagated up the chain. (Erick Erickson) |
---|
| 983 | |
---|
| 984 | * SOLR-2718: Add ability to lazy load response writers, defined with startup="lazy". |
---|
| 985 | (ehatcher) |
---|
| 986 | |
---|
| 987 | * SOLR-2901: Upgrade Solr to Tika 1.0 (janhoy) |
---|
| 988 | |
---|
| 989 | * SOLR-3059: Example XSL stylesheet for indexing query result XML (janhoy) |
---|
| 990 | |
---|
| 991 | * SOLR-3097, SOLR-3105: Add analysis configurations for different languages to |
---|
| 992 | the example. (Christian Moen, Robert Muir) |
---|
| 993 | |
---|
| 994 | * SOLR-3005: Default QueryResponseWriters are now initialized via init() with an empty |
---|
| 995 | NamedList. (Gasol Wu, Chris Male) |
---|
| 996 | |
---|
| 997 | * SOLR-3140: Upgrade schema version to 1.5, where omitNorms defaults to "true" for all |
---|
| 998 | primitive (non-analyzed) field types such as int, float, date, bool, string.. (janhoy) |
---|
| 999 | |
---|
| 1000 | * SOLR-3077: Better error messages when attempting to use "blank" field names |
---|
| 1001 | (Antony Stubbs via hossman) |
---|
| 1002 | |
---|
| 1003 | * SOLR-2712: expecting fl=score to return all fields is now deprecated. |
---|
| 1004 | In solr 4.0, this will only return the score. (ryan) |
---|
| 1005 | |
---|
| 1006 | * SOLR-3156: Check for Lucene directory locks at startup. In previous versions |
---|
| 1007 | this check was only performed during modifying (e.g. adding and deleting |
---|
| 1008 | documents) the index. (Luca Cavanna via Martijn van Groningen) |
---|
| 1009 | |
---|
| 1010 | * SOLR-1052: Deprecated <indexDefaults> and <mainIndex> in solrconfig.xml |
---|
| 1011 | From now, all settings go in the new <indexConfig> tag, and some defaults are |
---|
| 1012 | changed: useCompoundFile=false, ramBufferSizeMB=32, lockType=native, so that |
---|
| 1013 | the effect of NOT specifying <indexConfig> at all gives same result as the |
---|
| 1014 | example config used to give in 3.5 (janhoy, gsingers) |
---|
| 1015 | |
---|
| 1016 | Build |
---|
| 1017 | ---------------------- |
---|
| 1018 | * SOLR-2487: Add build target to package war without slf4j jars (janhoy) |
---|
| 1019 | |
---|
| 1020 | * SOLR-3112: Fix tests not to write to src/test-files (Luca Cavanna via Robert Muir) |
---|
| 1021 | |
---|
| 1022 | * LUCENE-3753: Restructure the Solr build system. (Steve Rowe) |
---|
| 1023 | |
---|
| 1024 | * SOLR-3204: The packaged pre-release artifact of Commons CSV used the original |
---|
| 1025 | package name (org.apache.commons.csv). This created a compatibility issue as |
---|
| 1026 | the Apache Commons team works toward an official release of Commons CSV. |
---|
| 1027 | The source of Commons CSV was added under a separate package name to the |
---|
| 1028 | Solr source code. (Uwe Schindler, Chris Male, Emmanuel Bourg) |
---|
| 1029 | |
---|
| 1030 | * LUCENE-3930: Changed build system to use Apache Ivy for retrival of 3rd |
---|
| 1031 | party JAR files. Please review README.txt for instructions. |
---|
| 1032 | (Robert Muir, Chris Male, Uwe Schindler, Steven Rowe, Hossman) |
---|
| 1033 | |
---|
| 1034 | ================== 3.5.0 ================== |
---|
| 1035 | |
---|
| 1036 | New Features |
---|
| 1037 | ---------------------- |
---|
| 1038 | * SOLR-2749: Add boundary scanners for FastVectorHighlighter. <boundaryScanner/> |
---|
| 1039 | can be specified with a name in solrconfig.xml, and use hl.boundaryScanner=name |
---|
| 1040 | parameter to specify the named <boundaryScanner/>. (koji) |
---|
| 1041 | |
---|
| 1042 | * SOLR-2066,SOLR-2776: Added support for distributed grouping. |
---|
| 1043 | (Martijn van Groningen, Jasper van Veghel, Matt Beaumont) |
---|
| 1044 | |
---|
| 1045 | * SOLR-2769: Added factory for the new Hunspell stemmer capable of doing stemming |
---|
| 1046 | for 99 languages (janhoy, cmale) |
---|
| 1047 | |
---|
| 1048 | * SOLR-1979: New contrib "langid". Adds language identification capabilities as an |
---|
| 1049 | Update Processor, using Tika's LanguageIdentifier or Cybozu language-detection |
---|
| 1050 | library (janhoy, Tommaso Teofili, gsingers) |
---|
| 1051 | |
---|
| 1052 | * SOLR-2818: Added before/after count response parsing support for range facets in |
---|
| 1053 | SolrJ. (Bernhard Frauendienst via Martijn van Groningen) |
---|
| 1054 | |
---|
| 1055 | * SOLR-2276: Add support for cologne phonetic to PhoneticFilterFactory. |
---|
| 1056 | (Marc Pompl via rmuir) |
---|
| 1057 | |
---|
| 1058 | * SOLR-1926: Add hl.q parameter. (koji) |
---|
| 1059 | |
---|
| 1060 | * SOLR-2881: Numeric types now support sortMissingFirst/Last. This includes Trie and date types |
---|
| 1061 | (Ryan McKinley, Mike McCandless, Uwe Schindler, Erick Erickson) |
---|
| 1062 | |
---|
| 1063 | * SOLR-1023: StatsComponent now supports date fields and string fields. |
---|
| 1064 | (Chris Male, Mark Holland, Gunnlaugur Thor Briem, Ryan McKinley) |
---|
| 1065 | |
---|
| 1066 | * SOLR-2578: ReplicationHandler's backup command now supports a 'numberToKeep' |
---|
| 1067 | request param that can be used to delete all but the most recent N backups. |
---|
| 1068 | (James Dyer via hossman) |
---|
| 1069 | |
---|
| 1070 | Optimizations |
---|
| 1071 | ---------------------- |
---|
| 1072 | |
---|
| 1073 | * SOLR-2742: SolrJ: Provide commitWithinMs as optional parameter for all add() methods, |
---|
| 1074 | making the feature more conveniently accessible for developers (janhoy) |
---|
| 1075 | |
---|
| 1076 | Bug Fixes |
---|
| 1077 | ---------------------- |
---|
| 1078 | * SOLR-2748: The CommitTracker used for commitWith or autoCommit by maxTime |
---|
| 1079 | could commit too frequently and could block adds until a new searcher was |
---|
| 1080 | registered. (yonik) |
---|
| 1081 | |
---|
| 1082 | * SOLR-2726: Fixed NullPointerException when using spellcheck.q with Suggester. |
---|
| 1083 | (Bernd Fehling, valentin via rmuir) |
---|
| 1084 | |
---|
| 1085 | * SOLR-2772: Fixed Date parsing/formatting of years 0001-1000 (hossman) |
---|
| 1086 | |
---|
| 1087 | * SOLR-2763: Extracting update request handler throws exception and returns 400 |
---|
| 1088 | when zero-length file posted using multipart form post (janhoy) |
---|
| 1089 | |
---|
| 1090 | * SOLR-2780: Fixed issue where multi select facets didn't respect group.truncate parameter. |
---|
| 1091 | (Martijn van Groningen, Ramzi Alqrainy) |
---|
| 1092 | |
---|
| 1093 | * SOLR-2793: In rare cases (most likely during shutdown), a SolrIndexSearcher can be left |
---|
| 1094 | open if the executor rejects a task. (Mark Miller) |
---|
| 1095 | |
---|
| 1096 | * SOLR-2791: Replication: abortfetch command is broken if replication was started |
---|
| 1097 | by fetchindex command instead of a regular poll (Yury Kats via shalin) |
---|
| 1098 | |
---|
| 1099 | * SOLR-2861: Fix extremely rare race condition on commit that can result |
---|
| 1100 | in a NPE (yonik) |
---|
| 1101 | |
---|
| 1102 | * SOLR-2813: Fix HTTP error codes returned when requests contain strings that |
---|
| 1103 | can not be parsed as numbers for Trie fields. (Jeff Crump and hossman) |
---|
| 1104 | |
---|
| 1105 | * SOLR-2902: List of collations are wrong parsed in SpellCheckResponse causing |
---|
| 1106 | a wrong number of collation results in the response. |
---|
| 1107 | (Bastiaan Verhoef, James Dyer via Simon Willnauer) |
---|
| 1108 | |
---|
| 1109 | Other Changes |
---|
| 1110 | ---------------------- |
---|
| 1111 | |
---|
| 1112 | * SOLR-2750: Make both "update.chain" and the deprecated "update.param" work |
---|
| 1113 | consistently everywhere; see also SOLR-2105. (Mark Miller, janhoy) |
---|
| 1114 | |
---|
| 1115 | * LUCENE-3410: Deprecated the WordDelimiterFilter constructors accepting multiple |
---|
| 1116 | ints masquerading as booleans. Preferred constructor now accepts a single int |
---|
| 1117 | bitfield (Chris Male) |
---|
| 1118 | |
---|
| 1119 | * SOLR-2758: Moved ConcurrentLRUCache from o.a.s.common.util package in the solrj |
---|
| 1120 | module to the o.a.s.util package in the Solr core module. |
---|
| 1121 | (David Smiley via Steve Rowe) |
---|
| 1122 | |
---|
| 1123 | * SOLR-2766: Package individual javadoc sites for solrj and test-framework. |
---|
| 1124 | (Steve Rowe, Mike McCandless) |
---|
| 1125 | |
---|
| 1126 | * SOLR-2771: Solr modules' tests should not depend on solr-core test classes; |
---|
| 1127 | move BufferingRequestProcessor from solr-core tests to test-framework so that |
---|
| 1128 | the Solr Cell module can use it. (janhoy, Steve Rowe) |
---|
| 1129 | |
---|
| 1130 | * LUCENE-3457: Upgrade commons-compress to 1.2 (Doron Cohen) |
---|
| 1131 | |
---|
| 1132 | * SOLR-2757: min() and max() functions now support an arbitrary number of |
---|
| 1133 | ValueSources (Bill Bell via hossman) |
---|
| 1134 | |
---|
| 1135 | * SOLR-2372: Upgrade Solr to Tika 0.10 (janhoy) |
---|
| 1136 | |
---|
| 1137 | * SOLR-2792: Allow case insensitive Hunspell stemming (janhoy, rmuir) |
---|
| 1138 | |
---|
| 1139 | * SOLR-2862: More explicit lexical resources location logged if Carrot2 clustering |
---|
| 1140 | extension is used. Fixed solr. impl. of IResource and IResourceLookup. (Dawid Weiss) |
---|
| 1141 | |
---|
| 1142 | * SOLR-2849: Fix dependencies in Maven POMs. (David Smiley via Steve Rowe) |
---|
| 1143 | |
---|
| 1144 | * SOLR-2591: Remove commitLockTimeout option from solrconfig.xml (Luca Cavanna via Martijn van Groningen) |
---|
| 1145 | |
---|
| 1146 | ================== 3.4.0 ================== |
---|
| 1147 | |
---|
| 1148 | Upgrading from Solr 3.3 |
---|
| 1149 | ---------------------- |
---|
| 1150 | |
---|
| 1151 | * The Lucene index format has changed and as a result, once you upgrade, |
---|
| 1152 | previous versions of Solr will no longer be able to read your indices. |
---|
| 1153 | In a master/slave configuration, all searchers/slaves should be upgraded |
---|
| 1154 | before the master. If the master were to be updated first, the older |
---|
| 1155 | searchers would not be able to read the new index format. |
---|
| 1156 | |
---|
| 1157 | * Previous versions of Solr silently allow and ignore some contradictory |
---|
| 1158 | properties specified in schema.xml. For example: |
---|
| 1159 | - indexed="false" omitNorms="false" |
---|
| 1160 | - indexed="false" omitTermFreqAndPositions="false" |
---|
| 1161 | Field property validation has now been fixed, to ensure that |
---|
| 1162 | contradictions like these now generate error messages. If users |
---|
| 1163 | have existing schemas that generate one of these new "conflicting |
---|
| 1164 | 'false' field options for non-indexed field" error messages the |
---|
| 1165 | conflicting "omit*" properties can safely be removed, or changed to |
---|
| 1166 | "true" for consistent behavior with previous Solr versions. This |
---|
| 1167 | situation has now been fixed to cause an error on startup when these |
---|
| 1168 | contradictory options. See SOLR-2669. |
---|
| 1169 | |
---|
| 1170 | * FacetComponent no longer catches and embeds exceptions occurred during facet |
---|
| 1171 | processing, it throws HTTP 400 or 500 exceptions instead. |
---|
| 1172 | |
---|
| 1173 | New Features |
---|
| 1174 | ---------------------- |
---|
| 1175 | |
---|
| 1176 | * SOLR-2540: CommitWithin as an Update Request parameter |
---|
| 1177 | You can now specify &commitWithin=N (ms) on the update request (janhoy) |
---|
| 1178 | |
---|
| 1179 | * SOLR-2458: post.jar enhanced to handle JSON, CSV and <optimize> (janhoy) |
---|
| 1180 | |
---|
| 1181 | * LUCENE-3234: add a new parameter hl.phraseLimit for FastVectorHighlighter speed up. |
---|
| 1182 | (Mike Sokolov via koji) |
---|
| 1183 | |
---|
| 1184 | * SOLR-2429: Ability to add cache=false to queries and query filters to avoid |
---|
| 1185 | using the filterCache or queryCache. A cost may also be specified and is used |
---|
| 1186 | to order the evaluation of non-cached filters from least to greatest cost . |
---|
| 1187 | For very expensive query filters (cost >= 100) if the query implements |
---|
| 1188 | the PostFilter interface, it will be used to obtain a Collector that is |
---|
| 1189 | checked only for documents that match the main query and all other filters. |
---|
| 1190 | The "frange" query now implements the PostFilter interface. (yonik) |
---|
| 1191 | |
---|
| 1192 | * SOLR-2630: Added new XsltUpdateRequestHandler that works like |
---|
| 1193 | XmlUpdateRequestHandler but allows to transform the POSTed XML document |
---|
| 1194 | using XSLT. This allows to POST arbitrary XML documents to the update |
---|
| 1195 | handler, as long as you also provide a XSL to transform them to a valid |
---|
| 1196 | Solr input document. (Upayavira, Uwe Schindler) |
---|
| 1197 | |
---|
| 1198 | * SOLR-2615: Log individual updates (adds and deletes) at the FINE level |
---|
| 1199 | before adding to the index. Fix a null pointer exception in logging |
---|
| 1200 | when there was no unique key. (David Smiley via yonik) |
---|
| 1201 | |
---|
| 1202 | * LUCENE-2048: Added omitPositions to the schema, so you can omit position |
---|
| 1203 | information while still indexing term frequencies. (rmuir) |
---|
| 1204 | |
---|
| 1205 | * SOLR-2584: add UniqFieldsUpdateProcessor that removes duplicate values in the |
---|
| 1206 | specified fields. (Elmer Garduno, koji) |
---|
| 1207 | |
---|
| 1208 | * SOLR-2670: Added NIOFSDirectoryFactory (yonik) |
---|
| 1209 | |
---|
| 1210 | * SOLR-2523: Added support in SolrJ to easily interact with range facets. |
---|
| 1211 | The range facet response can be parsed and is retrievable from the |
---|
| 1212 | QueryResponse class. The SolrQuery class has convenient methods for using |
---|
| 1213 | range facets. (Martijn van Groningen) |
---|
| 1214 | |
---|
| 1215 | * SOLR-2637: Added support for group result parsing in SolrJ. |
---|
| 1216 | (Tao Cheng, Martijn van Groningen) |
---|
| 1217 | |
---|
| 1218 | * SOLR-2665: Added post group faceting. Facet counts are based on the most |
---|
| 1219 | relevant document of each group matching the query. This feature has the |
---|
| 1220 | same impact on the StatsComponent. (Martijn van Groningen) |
---|
| 1221 | |
---|
| 1222 | * SOLR-2675: CoreAdminHandler now allows arbitrary properties to be |
---|
| 1223 | specified when CREATEing a new SolrCore using property.* request |
---|
| 1224 | params. (Yury Kats, hossman) |
---|
| 1225 | |
---|
| 1226 | * SOLR-2714: JSON update format - "null" field values are now dropped |
---|
| 1227 | instead of causing an exception. (Trygve LaugstÞl, yonik) |
---|
| 1228 | |
---|
| 1229 | |
---|
| 1230 | Optimizations |
---|
| 1231 | ---------------------- |
---|
| 1232 | |
---|
| 1233 | * LUCENE-3233: Improved memory usage, build time, and performance of |
---|
| 1234 | SynonymFilterFactory. (Mike McCandless, Robert Muir) |
---|
| 1235 | |
---|
| 1236 | Bug Fixes |
---|
| 1237 | ---------------------- |
---|
| 1238 | |
---|
| 1239 | * SOLR-2625: TermVectorComponent throws NPE if TF-IDF option is used without DF |
---|
| 1240 | option. (Daniel Erenrich, Simon Willnauer) |
---|
| 1241 | |
---|
| 1242 | * SOLR-2631: PingRequestHandler should not allow to ping itsself using "qt" |
---|
| 1243 | param to prevent infinite loop. (Edoardo Tosca, Uwe Schindler) |
---|
| 1244 | |
---|
| 1245 | * SOLR-2636: Fix explain functionality for negative queries. (Tom Hill via yonik) |
---|
| 1246 | |
---|
| 1247 | * SOLR-2538: Range Faceting on long/double fields could overflow if values |
---|
| 1248 | bigger then the max int/float were used. |
---|
| 1249 | (Erbi Hanka, hossman) |
---|
| 1250 | |
---|
| 1251 | * SOLR-2230: CommonsHttpSolrServer.addFile could not be used to send |
---|
| 1252 | multiple files in a single request. |
---|
| 1253 | (Stephan GÃŒnther, hossman) |
---|
| 1254 | |
---|
| 1255 | * SOLR-2541: PluginInfos was not correctly parsing <long/> tags when |
---|
| 1256 | initializing plugins |
---|
| 1257 | (Frank Wesemann, hossman) |
---|
| 1258 | |
---|
| 1259 | * SOLR-2623: Solr JMX MBeans do not survive core reloads (Alexey Serba, shalin) |
---|
| 1260 | |
---|
| 1261 | * Fixed grouping bug when start is bigger than rows and format is simple that zero documents are returned even |
---|
| 1262 | if there are documents to display. (Martijn van Groningen, Nikhil Chhaochharia) |
---|
| 1263 | |
---|
| 1264 | * SOLR-2564: Fixed ArrayIndexOutOfBoundsException when using simple format and |
---|
| 1265 | start > 0 (Martijn van Groningen, Matteo Melli) |
---|
| 1266 | |
---|
| 1267 | * SOLR-2642: Fixed sorting by function when using grouping. (Thomas Heigl, Martijn van Groningen) |
---|
| 1268 | |
---|
| 1269 | * SOLR-2535: REGRESSION: in Solr 3.x and trunk the admin/file handler |
---|
| 1270 | fails to show directory listings (David Smiley, Peter Wolanin via Erick Erickson) |
---|
| 1271 | |
---|
| 1272 | * SOLR-2545: ExternalFileField file parsing would fail if any key |
---|
| 1273 | contained an "=" character. It now only looks for the last "=" delimiter |
---|
| 1274 | prior to the float value. |
---|
| 1275 | (Markus Jelsma, hossman) |
---|
| 1276 | |
---|
| 1277 | * SOLR-2662: When Solr is configured to have no queryResultCache, the |
---|
| 1278 | "start" parameter was not honored and the documents returned were |
---|
| 1279 | 0 through start+offset. (Markus Jelsma, yonik) |
---|
| 1280 | |
---|
| 1281 | * SOLR-2669: Fix backwards validation of field properties in |
---|
| 1282 | SchemaField.calcProps (hossman) |
---|
| 1283 | |
---|
| 1284 | * SOLR-2676: Add "welcome-file-list" to solr.war so admin UI works correctly |
---|
| 1285 | in servlet containers such as WebSphere that do not use a default list |
---|
| 1286 | (Jay R. Jaeger, hossman) |
---|
| 1287 | |
---|
| 1288 | * SOLR-2606: Fixed sort parsing of fields containing punctuation that |
---|
| 1289 | failed due to sort by function changes introduced in SOLR-1297 |
---|
| 1290 | (Mitsu Hadeishi, hossman) |
---|
| 1291 | |
---|
| 1292 | Other Changes |
---|
| 1293 | ---------------------- |
---|
| 1294 | |
---|
| 1295 | * SOLR-2629: Eliminate deprecation warnings in some JSPs. |
---|
| 1296 | (Bernd Fehling, hossman) |
---|
| 1297 | |
---|
| 1298 | Build |
---|
| 1299 | ---------------------- |
---|
| 1300 | |
---|
| 1301 | * SOLR-2452,SOLR-2653,LUCENE-3323,SOLR-2659,LUCENE-3329,SOLR-2666: |
---|
| 1302 | Rewrote the Solr build system: |
---|
| 1303 | - Integrated more fully with the Lucene build system: generalized the |
---|
| 1304 | Lucene build system and eliminated duplication. |
---|
| 1305 | - Converted all Solr contribs to the Lucene/Solr conventional src/ layout: |
---|
| 1306 | java/, resources/, test/, and test-files/<contrib-name>. |
---|
| 1307 | - Created a new Solr-internal module named "core" by moving the java/, |
---|
| 1308 | test/, and test-files/ directories from solr/src/ to solr/core/src/. |
---|
| 1309 | - Merged solr/src/webapp/src/ into solr/core/src/java/. |
---|
| 1310 | - Eliminated solr/src/ by moving all its directories up one level; |
---|
| 1311 | renamed solr/src/site/ to solr/site-src/ because solr/site/ already |
---|
| 1312 | exists. |
---|
| 1313 | - Merged solr/src/common/ into solr/solrj/src/java/. |
---|
| 1314 | - Moved o.a.s.client.solrj.* and o.a.s.common.* tests from |
---|
| 1315 | solr/src/test/ to solr/solrj/src/test/. |
---|
| 1316 | - Made the solrj tests not depend on the solr core tests by moving |
---|
| 1317 | some classes from solr/src/test/ to solr/test-framework/src/java/. |
---|
| 1318 | - Each internal module (core/, solrj/, test-framework/, and webapp/) |
---|
| 1319 | now has its own build.xml, from which it is possible to run |
---|
| 1320 | module-specific targets. solr/build.xml delegates all build |
---|
| 1321 | tasks (via <ant dir="internal-module-dir"> calls) to these |
---|
| 1322 | modules' build.xml files. |
---|
| 1323 | (Steve Rowe, Robert Muir) |
---|
| 1324 | |
---|
| 1325 | * LUCENE-3406: Add ant target 'package-local-src-tgz' to Lucene and Solr |
---|
| 1326 | to package sources from the local working copy. |
---|
| 1327 | (Seung-Yeoul Yang via Steve Rowe) |
---|
| 1328 | |
---|
| 1329 | Documentation |
---|
| 1330 | ---------------------- |
---|
| 1331 | |
---|
| 1332 | ================== 3.3.0 ================== |
---|
| 1333 | |
---|
| 1334 | Upgrading from Solr 3.2.0 |
---|
| 1335 | ---------------------- |
---|
| 1336 | * SolrCore's CloseHook API has been changed in a backward-incompatible way. It |
---|
| 1337 | has been changed from an interface to an abstract class. Any custom |
---|
| 1338 | components which use the SolrCore.addCloseHook method will need to |
---|
| 1339 | be modified accordingly. To migrate, put your old CloseHook#close impl into |
---|
| 1340 | CloseHook#preClose. |
---|
| 1341 | |
---|
| 1342 | New Features |
---|
| 1343 | ---------------------- |
---|
| 1344 | |
---|
| 1345 | * SOLR-2378: A new, automaton-based, implementation of suggest (autocomplete) |
---|
| 1346 | component, offering an order of magnitude smaller memory consumption |
---|
| 1347 | compared to ternary trees and jaspell and very fast lookups at runtime. |
---|
| 1348 | (Dawid Weiss) |
---|
| 1349 | |
---|
| 1350 | * SOLR-2400: Field- and DocumentAnalysisRequestHandler now provide a position |
---|
| 1351 | history for each token, so you can follow the token through all analysis stages. |
---|
| 1352 | The output contains a separate int[] attribute containing all positions from |
---|
| 1353 | previous Tokenizers/TokenFilters (called "positionHistory"). |
---|
| 1354 | (Uwe Schindler) |
---|
| 1355 | |
---|
| 1356 | * SOLR-2524: (SOLR-236, SOLR-237, SOLR-1773, SOLR-1311) Grouping / Field collapsing |
---|
| 1357 | using the Lucene grouping contrib. The search result can be grouped by field and query. |
---|
| 1358 | (Martijn van Groningen, Emmanuel Keller, Shalin Shekhar Mangar, Koji Sekiguchi, |
---|
| 1359 | Iván de Prado, Ryan McKinley, Marc Sturlese, Peter Karich, Bojan Smid, |
---|
| 1360 | Charles Hornberger, Dieter Grad, Dmitry Lihachev, Doug Steigerwald, |
---|
| 1361 | Karsten Sperling, Michael Gundlach, Oleg Gnatovskiy, Thomas Traeger, |
---|
| 1362 | Harish Agarwal, yonik, Michael McCandless, Bill Bell) |
---|
| 1363 | |
---|
| 1364 | * SOLR-1331 -- Added a srcCore parameter to CoreAdminHandler's mergeindexes action |
---|
| 1365 | to merge one or more cores' indexes to a target core (shalin) |
---|
| 1366 | |
---|
| 1367 | * SOLR-2610 -- Add an option to delete index through CoreAdmin UNLOAD action (shalin) |
---|
| 1368 | |
---|
| 1369 | Optimizations |
---|
| 1370 | ---------------------- |
---|
| 1371 | |
---|
| 1372 | * SOLR-2567: Solr now defaults to TieredMergePolicy. See http://s.apache.org/merging |
---|
| 1373 | for more information. (rmuir) |
---|
| 1374 | |
---|
| 1375 | Bug Fixes |
---|
| 1376 | ---------------------- |
---|
| 1377 | |
---|
| 1378 | * SOLR-2519: Improve text_* fieldTypes in example schema.xml: improve |
---|
| 1379 | cross-language defaults for text_general; break out separate |
---|
| 1380 | English-specific fieldTypes (Jan HÞydahl, hossman, Robert Muir, |
---|
| 1381 | yonik, Mike McCandless) |
---|
| 1382 | |
---|
| 1383 | * SOLR-2462: Fix extremely high memory usage problems with spellcheck.collate. |
---|
| 1384 | Separately, an additional spellcheck.maxCollationEvaluations (default=10000) |
---|
| 1385 | parameter is added to avoid excessive CPU time in extreme cases (e.g. long |
---|
| 1386 | queries with many misspelled words). (James Dyer via rmuir) |
---|
| 1387 | |
---|
| 1388 | Other Changes |
---|
| 1389 | ---------------------- |
---|
| 1390 | |
---|
| 1391 | * SOLR-2571: Add a commented out example of the spellchecker's thresholdTokenFrequency |
---|
| 1392 | parameter to the example solrconfig.xml, and also add a unit test for this feature. |
---|
| 1393 | (James Dyer via rmuir) |
---|
| 1394 | |
---|
| 1395 | * SOLR-2576: Deprecate SpellingResult.add(Token token, int docFreq), please use |
---|
| 1396 | SpellingResult.addFrequency(Token token, int docFreq) instead. |
---|
| 1397 | (James Dyer via rmuir) |
---|
| 1398 | |
---|
| 1399 | * SOLR-2574: Upgrade slf4j to v1.6.1 (shalin) |
---|
| 1400 | |
---|
| 1401 | * LUCENE-3204: The maven-ant-tasks jar is now included in the source tree; |
---|
| 1402 | users of the generate-maven-artifacts target no longer have to manually |
---|
| 1403 | place this jar in the Ant classpath. NOTE: when Ant looks for the |
---|
| 1404 | maven-ant-tasks jar, it looks first in its pre-existing classpath, so |
---|
| 1405 | any copies it finds will be used instead of the copy included in the |
---|
| 1406 | Lucene/Solr source tree. For this reason, it is recommeded to remove |
---|
| 1407 | any copies of the maven-ant-tasks jar in the Ant classpath, e.g. under |
---|
| 1408 | ~/.ant/lib/ or under the Ant installation's lib/ directory. (Steve Rowe) |
---|
| 1409 | |
---|
| 1410 | * SOLR-2611: Fix typos in the example configuration (Eric Pugh via rmuir) |
---|
| 1411 | |
---|
| 1412 | ================== 3.2.0 ================== |
---|
| 1413 | Versions of Major Components |
---|
| 1414 | --------------------- |
---|
| 1415 | Apache Lucene trunk |
---|
| 1416 | Apache Tika 0.8 |
---|
| 1417 | Carrot2 3.4.2 |
---|
| 1418 | |
---|
| 1419 | |
---|
| 1420 | Upgrading from Solr 3.1 |
---|
| 1421 | ---------------------- |
---|
| 1422 | |
---|
| 1423 | * The updateRequestProcessorChain for a RequestHandler is now defined |
---|
| 1424 | with update.chain rather than update.processor. The latter still works, |
---|
| 1425 | but has been deprecated. |
---|
| 1426 | |
---|
| 1427 | Detailed Change List |
---|
| 1428 | ---------------------- |
---|
| 1429 | |
---|
| 1430 | New Features |
---|
| 1431 | ---------------------- |
---|
| 1432 | |
---|
| 1433 | * SOLR-2496: Add ability to specify overwrite and commitWithin as request |
---|
| 1434 | parameters (e.g. specified in the URL) when using the JSON update format, |
---|
| 1435 | and added a simplified format for specifying multiple documents. |
---|
| 1436 | Example: [{"id":"doc1"},{"id":"doc2"}] |
---|
| 1437 | (yonik) |
---|
| 1438 | |
---|
| 1439 | * SOLR-2113: Add TermQParserPlugin, registered as "term". This is useful |
---|
| 1440 | when generating filter queries from terms returned from field faceting or |
---|
| 1441 | the terms component. Example: fq={!term f=weight}1.5 (hossman, yonik) |
---|
| 1442 | |
---|
| 1443 | * SOLR-1915: DebugComponent now supports using a NamedList to model |
---|
| 1444 | Explanation objects in it's responses instead of |
---|
| 1445 | Explanation.toString (hossman) |
---|
| 1446 | |
---|
| 1447 | Optimizations |
---|
| 1448 | ---------------------- |
---|
| 1449 | |
---|
| 1450 | Bug Fixes |
---|
| 1451 | ---------------------- |
---|
| 1452 | |
---|
| 1453 | * SOLR-2445: Change the default qt to blank in form.jsp, because there is no "standard" |
---|
| 1454 | request handler unless you have it in your solrconfig.xml explicitly. (koji) |
---|
| 1455 | |
---|
| 1456 | * SOLR-2455: Prevent double submit of forms in admin interface. |
---|
| 1457 | (Jeffrey Chang via uschindler) |
---|
| 1458 | |
---|
| 1459 | * SOLR-2464: Fix potential slowness in QueryValueSource (the query() function) when |
---|
| 1460 | the query is very sparse and may not match any documents in a segment. (yonik) |
---|
| 1461 | |
---|
| 1462 | * SOLR-2469: When using java replication with replicateAfter=startup, the first |
---|
| 1463 | commit point on server startup is never removed. (yonik) |
---|
| 1464 | |
---|
| 1465 | * SOLR-2466: SolrJ's CommonsHttpSolrServer would retry requests on failure, regardless |
---|
| 1466 | of the configured maxRetries, due to HttpClient having it's own retry mechanism |
---|
| 1467 | by default. The retryCount of HttpClient is now set to 0, and SolrJ does |
---|
| 1468 | the retry. (yonik) |
---|
| 1469 | |
---|
| 1470 | * SOLR-2409: edismax parser - treat the text of a fielded query as a literal if the |
---|
| 1471 | fieldname does not exist. For example Mission: Impossible should not search on |
---|
| 1472 | the "Mission" field unless it's a valid field in the schema. (Ryan McKinley, yonik) |
---|
| 1473 | |
---|
| 1474 | * SOLR-2403: facet.sort=index reported incorrect results for distributed search |
---|
| 1475 | in a number of scenarios when facet.mincount>0. This patch also adds some |
---|
| 1476 | performance/algorithmic improvements when (facet.sort=count && facet.mincount=1 |
---|
| 1477 | && facet.limit=-1) and when (facet.sort=index && facet.mincount>0) (yonik) |
---|
| 1478 | |
---|
| 1479 | * SOLR-2333: The "rename" core admin action does not persist the new name to solr.xml |
---|
| 1480 | (Rasmus Hahn, Paul R. Brown via Mark Miller) |
---|
| 1481 | |
---|
| 1482 | * SOLR-2390: Performance of usePhraseHighlighter is terrible on very large Documents, |
---|
| 1483 | regardless of hl.maxDocCharsToAnalyze. (Mark Miller) |
---|
| 1484 | |
---|
| 1485 | * SOLR-2474: The helper TokenStreams in analysis.jsp and AnalysisRequestHandlerBase |
---|
| 1486 | did not clear all attributes so they displayed incorrect attribute values for tokens |
---|
| 1487 | in later filter stages. (uschindler, rmuir, yonik) |
---|
| 1488 | |
---|
| 1489 | * SOLR-2467: Fix <analyzer class="..." /> initialization so any errors |
---|
| 1490 | are logged properly. (hossman) |
---|
| 1491 | |
---|
| 1492 | * SOLR-2493: SolrQueryParser was fixed to not parse the SolrConfig DOM tree on each |
---|
| 1493 | instantiation which is a huge slowdown. (Stephane Bailliez via uschindler) |
---|
| 1494 | |
---|
| 1495 | * SOLR-2495: The JSON parser could hang on corrupted input and could fail |
---|
| 1496 | to detect numbers that were too large to fit in a long. (yonik) |
---|
| 1497 | |
---|
| 1498 | * SOLR-2520: Make JSON response format escape \u2029 as well as \u2028 |
---|
| 1499 | in strings since those characters are not valid in javascript strings |
---|
| 1500 | (although they are valid in JSON strings). (yonik) |
---|
| 1501 | |
---|
| 1502 | * SOLR-2536: Add ReloadCacheRequestHandler to fix ExternalFileField bug (if reopenReaders |
---|
| 1503 | set to true and no index segments have been changed, commit cannot trigger reload |
---|
| 1504 | external file). (koji) |
---|
| 1505 | |
---|
| 1506 | * SOLR-2539: VectorValueSource.floatVal incorrectly used byteVal on sub-sources. |
---|
| 1507 | (Tom Liu via yonik) |
---|
| 1508 | |
---|
| 1509 | * SOLR-2554: RandomSortField didn't work when used in a function query. (yonik) |
---|
| 1510 | |
---|
| 1511 | |
---|
| 1512 | Other Changes |
---|
| 1513 | ---------------------- |
---|
| 1514 | |
---|
| 1515 | * SOLR-2061: Pull base tests out into a new Solr Test Framework module, |
---|
| 1516 | and publish binary, javadoc, and source test-framework jars. |
---|
| 1517 | (Drew Farris, Robert Muir, Steve Rowe) |
---|
| 1518 | |
---|
| 1519 | * SOLR-2105: Rename RequestHandler param 'update.processor' to 'update.chain'. |
---|
| 1520 | (Jan HÞydahl via Mark Miller) |
---|
| 1521 | |
---|
| 1522 | * SOLR-2485: Deprecate BaseResponseWriter, GenericBinaryResponseWriter, and |
---|
| 1523 | GenericTextResponseWriter. These classes will be removed in 4.0. (ryan) |
---|
| 1524 | |
---|
| 1525 | * SOLR-2451: Enhance assertJQ to allow individual tests to specify the |
---|
| 1526 | tolerance delta used in numeric equalities. This allows for slight |
---|
| 1527 | variance in asserting score comparisons in unit tests. |
---|
| 1528 | (David Smiley, Chris Hostetter) |
---|
| 1529 | |
---|
| 1530 | * SOLR-2528: Remove default="true" from HtmlEncoder in example solrconfig.xml, |
---|
| 1531 | because html encoding confuses non-ascii users. (koji) |
---|
| 1532 | |
---|
| 1533 | Build |
---|
| 1534 | ---------------------- |
---|
| 1535 | |
---|
| 1536 | * LUCENE-3006: Building javadocs will fail on warnings by default. Override with -Dfailonjavadocwarning=false (sarowe, gsingers) |
---|
| 1537 | |
---|
| 1538 | |
---|
| 1539 | Documentation |
---|
| 1540 | ---------------------- |
---|
| 1541 | |
---|
| 1542 | |
---|
| 1543 | ================== 3.1.0 ================== |
---|
| 1544 | Versions of Major Components |
---|
| 1545 | --------------------- |
---|
| 1546 | Apache Lucene 3.1.0 |
---|
| 1547 | Apache Tika 0.8 |
---|
| 1548 | Carrot2 3.4.2 |
---|
| 1549 | Velocity 1.6.1 and Velocity Tools 2.0-beta3 |
---|
| 1550 | Apache UIMA 2.3.1-SNAPSHOT |
---|
| 1551 | |
---|
| 1552 | |
---|
| 1553 | Upgrading from Solr 1.4 |
---|
| 1554 | ---------------------- |
---|
| 1555 | |
---|
| 1556 | * The Lucene index format has changed and as a result, once you upgrade, |
---|
| 1557 | previous versions of Solr will no longer be able to read your indices. |
---|
| 1558 | In a master/slave configuration, all searchers/slaves should be upgraded |
---|
| 1559 | before the master. If the master were to be updated first, the older |
---|
| 1560 | searchers would not be able to read the new index format. |
---|
| 1561 | |
---|
| 1562 | * The Solr JavaBin format has changed as of Solr 3.1. If you are using the |
---|
| 1563 | JavaBin format, you will need to upgrade your SolrJ client. (SOLR-2034) |
---|
| 1564 | |
---|
| 1565 | * The experimental ALIAS command has been removed (SOLR-1637) |
---|
| 1566 | |
---|
| 1567 | * Using solr.xml is recommended for single cores also (SOLR-1621) |
---|
| 1568 | |
---|
| 1569 | * Old syntax of <highlighting> configuration in solrconfig.xml |
---|
| 1570 | is deprecated (SOLR-1696) |
---|
| 1571 | |
---|
| 1572 | * The deprecated HTMLStripReader, HTMLStripWhitespaceTokenizerFactory and |
---|
| 1573 | HTMLStripStandardTokenizerFactory were removed. To strip HTML tags, |
---|
| 1574 | HTMLStripCharFilter should be used instead, and it works with any |
---|
| 1575 | Tokenizer of your choice. (SOLR-1657) |
---|
| 1576 | |
---|
| 1577 | * Field compression is no longer supported. Fields that were formerly |
---|
| 1578 | compressed will be uncompressed as index segments are merged. For |
---|
| 1579 | shorter fields, this may actually be an improvement, as the compression |
---|
| 1580 | used was not very good for short text. Some indexes may get larger though. |
---|
| 1581 | |
---|
| 1582 | * SOLR-1845: The TermsComponent response format was changed so that the |
---|
| 1583 | "terms" container is a map instead of a named list. This affects |
---|
| 1584 | response formats like JSON, but not XML. (yonik) |
---|
| 1585 | |
---|
| 1586 | * SOLR-1876: All Analyzers and TokenStreams are now final to enforce |
---|
| 1587 | the decorator pattern. (rmuir, uschindler) |
---|
| 1588 | |
---|
| 1589 | * LUCENE-2608: Added the ability to specify the accuracy on a per request basis. |
---|
| 1590 | It is recommended that implementations of SolrSpellChecker should change over to the new SolrSpellChecker |
---|
| 1591 | methods using the new SpellingOptions class, but are not required to. While this change is |
---|
| 1592 | backward compatible, the trunk version of Solr has already dropped support for all but the SpellingOptions method. (gsingers) |
---|
| 1593 | |
---|
| 1594 | * readercycle script was removed. (SOLR-2046) |
---|
| 1595 | |
---|
| 1596 | * In previous releases, sorting or evaluating function queries on |
---|
| 1597 | fields that were "multiValued" (either by explicit declaration in |
---|
| 1598 | schema.xml or by implict behavior because the "version" attribute on |
---|
| 1599 | the schema was less then 1.2) did not generally work, but it would |
---|
| 1600 | sometimes silently act as if it succeeded and order the docs |
---|
| 1601 | arbitrarily. Solr will now fail on any attempt to sort, or apply a |
---|
| 1602 | function to, multi-valued fields |
---|
| 1603 | |
---|
| 1604 | * The DataImportHandler jars are no longer included in the solr |
---|
| 1605 | WAR and should be added in Solr's lib directory, or referenced |
---|
| 1606 | via the <lib> directive in solrconfig.xml. |
---|
| 1607 | |
---|
| 1608 | |
---|
| 1609 | Detailed Change List |
---|
| 1610 | ---------------------- |
---|
| 1611 | |
---|
| 1612 | New Features |
---|
| 1613 | ---------------------- |
---|
| 1614 | |
---|
| 1615 | * SOLR-1302: Added several new distance based functions, including |
---|
| 1616 | Great Circle (haversine), Manhattan, Euclidean and String (using the |
---|
| 1617 | StringDistance methods in the Lucene spellchecker). |
---|
| 1618 | Also added geohash(), deg() and rad() convenience functions. |
---|
| 1619 | See http://wiki.apache.org/solr/FunctionQuery. (gsingers) |
---|
| 1620 | |
---|
| 1621 | * SOLR-1553: New dismax parser implementation (accessible as "edismax") |
---|
| 1622 | that supports full lucene syntax, improved reserved char escaping, |
---|
| 1623 | fielded queries, improved proximity boosting, and improved stopword |
---|
| 1624 | handling. Note: status is experimental for now. (yonik) |
---|
| 1625 | |
---|
| 1626 | * SOLR-1574: Add many new functions from java Math (e.g. sin, cos) (yonik) |
---|
| 1627 | |
---|
| 1628 | * SOLR-1569: Allow functions to take in literal strings by modifying the |
---|
| 1629 | FunctionQParser and adding LiteralValueSource (gsingers) |
---|
| 1630 | |
---|
| 1631 | * SOLR-1571: Added unicode collation support though Lucene's CollationKeyFilter |
---|
| 1632 | (Robert Muir via shalin) |
---|
| 1633 | |
---|
| 1634 | * SOLR-785: Distributed Search support for SpellCheckComponent |
---|
| 1635 | (Matthew Woytowitz, shalin) |
---|
| 1636 | |
---|
| 1637 | * SOLR-1625: Add regexp support for TermsComponent (Uri Boness via noble) |
---|
| 1638 | |
---|
| 1639 | * SOLR-1297: Add sort by Function capability (gsingers, yonik) |
---|
| 1640 | |
---|
| 1641 | * SOLR-1139: Add TermsComponent Query and Response Support in SolrJ (Matt Weber via shalin) |
---|
| 1642 | |
---|
| 1643 | * SOLR-1177: Distributed Search support for TermsComponent (Matt Weber via shalin) |
---|
| 1644 | |
---|
| 1645 | * SOLR-1621, SOLR-1722: Allow current single core deployments to be specified by solr.xml (Mark Miller , noble) |
---|
| 1646 | |
---|
| 1647 | * SOLR-1532: Allow StreamingUpdateSolrServer to use a provided HttpClient (Gabriele Renzi via shalin) |
---|
| 1648 | |
---|
| 1649 | * SOLR-1653: Add PatternReplaceCharFilter (koji) |
---|
| 1650 | |
---|
| 1651 | * SOLR-1131: FieldTypes can now output multiple Fields per Type and still be searched. This can be handy for hiding the details of a particular |
---|
| 1652 | implementation such as in the spatial case. (Chris Mattmann, shalin, noble, gsingers, yonik) |
---|
| 1653 | |
---|
| 1654 | * SOLR-1586: Add support for Geohash and Spatial Tile FieldType (Chris Mattmann, gsingers) |
---|
| 1655 | |
---|
| 1656 | * SOLR-1697: PluginInfo should load plugins w/o class attribute also (noble) |
---|
| 1657 | |
---|
| 1658 | * SOLR-1268: Incorporate FastVectorHighlighter (koji) |
---|
| 1659 | |
---|
| 1660 | * SOLR-1750: SolrInfoMBeanHandler added for simpler programmatic access |
---|
| 1661 | to info currently available from registry.jsp and stats.jsp |
---|
| 1662 | (ehatcher, hossman) |
---|
| 1663 | |
---|
| 1664 | * SOLR-1815: SolrJ now preserves the order of facet queries. (yonik) |
---|
| 1665 | |
---|
| 1666 | * SOLR-1677: Add support for choosing the Lucene Version for Lucene components within |
---|
| 1667 | Solr. (Uwe Schindler, Mark Miller) |
---|
| 1668 | |
---|
| 1669 | * SOLR-1379: Add RAMDirectoryFactory for non-persistent in memory index storage. |
---|
| 1670 | (Alex Baranov via yonik) |
---|
| 1671 | |
---|
| 1672 | * SOLR-1857: Synced Solr analysis with Lucene 3.1. Added KeywordMarkerFilterFactory |
---|
| 1673 | and StemmerOverrideFilterFactory, which can be used to tune stemming algorithms. |
---|
| 1674 | Added factories for Bulgarian, Czech, Hindi, Turkish, and Wikipedia analysis. Improved the |
---|
| 1675 | performance of SnowballPorterFilterFactory. (rmuir) |
---|
| 1676 | |
---|
| 1677 | * SOLR-1657: Converted remaining TokenStreams to the Attributes-based API. All Solr |
---|
| 1678 | TokenFilters now support custom Attributes, and some have improved performance: |
---|
| 1679 | especially WordDelimiterFilter and CommonGramsFilter. (rmuir, cmale, uschindler) |
---|
| 1680 | |
---|
| 1681 | * SOLR-1740: ShingleFilterFactory supports the "minShingleSize" and "tokenSeparator" |
---|
| 1682 | parameters for controlling the minimum shingle size produced by the filter, and |
---|
| 1683 | the separator string that it uses, respectively. (Steven Rowe via rmuir) |
---|
| 1684 | |
---|
| 1685 | * SOLR-744: ShingleFilterFactory supports the "outputUnigramsIfNoShingles" |
---|
| 1686 | parameter, to output unigrams if the number of input tokens is fewer than |
---|
| 1687 | minShingleSize, and no shingles can be generated. |
---|
| 1688 | (Chris Harris via Steven Rowe) |
---|
| 1689 | |
---|
| 1690 | * SOLR-1923: PhoneticFilterFactory now has support for the |
---|
| 1691 | Caverphone algorithm. (rmuir) |
---|
| 1692 | |
---|
| 1693 | * SOLR-1957: The VelocityResponseWriter contrib moved to core. |
---|
| 1694 | Example search UI now available at http://localhost:8983/solr/browse |
---|
| 1695 | (ehatcher) |
---|
| 1696 | |
---|
| 1697 | * SOLR-1974: Add LimitTokenCountFilterFactory. (koji) |
---|
| 1698 | |
---|
| 1699 | * SOLR-1966: QueryElevationComponent can now return just the included results in the elevation file (gsingers, yonik) |
---|
| 1700 | |
---|
| 1701 | * SOLR-1556: TermVectorComponent now supports per field overrides. Also, it now throws an error |
---|
| 1702 | if passed in fields do not exist and warnings |
---|
| 1703 | if fields that do not have term vector options (termVectors, offsets, positions) |
---|
| 1704 | that align with the schema declaration. It also |
---|
| 1705 | will now return warnings about (gsingers) |
---|
| 1706 | |
---|
| 1707 | * SOLR-1985: FastVectorHighlighter: add wrapper class for Lucene's SingleFragListBuilder (koji) |
---|
| 1708 | |
---|
| 1709 | * SOLR-1984: Add HyphenationCompoundWordTokenFilterFactory. (PB via rmuir) |
---|
| 1710 | |
---|
| 1711 | * SOLR-397: Date Faceting now supports a "facet.date.include" param |
---|
| 1712 | for specifying when the upper & lower end points of computed date |
---|
| 1713 | ranges should be included in the range. Legal values are: "all", |
---|
| 1714 | "lower", "upper", "edge", and "outer". For backwards compatibility |
---|
| 1715 | the default value is the set: [lower,upper,edge], so that all ranges |
---|
| 1716 | between start and end are inclusive of their endpoints, but the |
---|
| 1717 | "before" and "after" ranges are not. |
---|
| 1718 | |
---|
| 1719 | * SOLR-945: JSON update handler that accepts add, delete, commit |
---|
| 1720 | commands in JSON format. (Ryan McKinley, yonik) |
---|
| 1721 | |
---|
| 1722 | * SOLR-2015: Add a boolean attribute autoGeneratePhraseQueries to TextField. |
---|
| 1723 | autoGeneratePhraseQueries="true" (the default) causes the query parser to |
---|
| 1724 | generate phrase queries if multiple tokens are generated from a single |
---|
| 1725 | non-quoted analysis string. For example WordDelimiterFilter splitting text:pdp-11 |
---|
| 1726 | will cause the parser to generate text:"pdp 11" rather than (text:PDP OR text:11). |
---|
| 1727 | Note that autoGeneratePhraseQueries="true" tends to not work well for non whitespace |
---|
| 1728 | delimited languages. (yonik) |
---|
| 1729 | |
---|
| 1730 | * SOLR-1925: Add CSVResponseWriter (use wt=csv) that returns the list of documents |
---|
| 1731 | in CSV format. (Chris Mattmann, yonik) |
---|
| 1732 | |
---|
| 1733 | * SOLR-1240: "Range Faceting" has been added. This is a generalization |
---|
| 1734 | of the existing "Date Faceting" logic so that it now supports any |
---|
| 1735 | all stock numeric field types that support range queries in addition |
---|
| 1736 | to dates. facet.date is now deprecated in favor of this generalized mechanism. |
---|
| 1737 | (Gijs Kunze, hossman) |
---|
| 1738 | |
---|
| 1739 | * SOLR-2021: Add SolrEncoder plugin to Highlighter. (koji) |
---|
| 1740 | |
---|
| 1741 | * SOLR-2030: Make FastVectorHighlighter use of SolrEncoder. (koji) |
---|
| 1742 | |
---|
| 1743 | * SOLR-2053: Add support for custom comparators in Solr spellchecker, per LUCENE-2479 (gsingers) |
---|
| 1744 | |
---|
| 1745 | * SOLR-2049: Add hl.multiValuedSeparatorChar for FastVectorHighlighter, per LUCENE-2603. (koji) |
---|
| 1746 | |
---|
| 1747 | * SOLR-2059: Add "types" attribute to WordDelimiterFilterFactory, which |
---|
| 1748 | allows you to customize how WordDelimiterFilter tokenizes text with |
---|
| 1749 | a configuration file. (Peter Karich, rmuir) |
---|
| 1750 | |
---|
| 1751 | * SOLR-2099: Add ability to throttle rsync based replication using rsync option --bwlimit. |
---|
| 1752 | (Brandon Evans via koji) |
---|
| 1753 | |
---|
| 1754 | * SOLR-1316: Create autosuggest component. |
---|
| 1755 | (Ankul Garg, Jason Rutherglen, Shalin Shekhar Mangar, Grant Ingersoll, Robert Muir, ab) |
---|
| 1756 | |
---|
| 1757 | * SOLR-1568: Added "native" filtering support for PointType, GeohashField. Added LatLonType with filtering support too. See |
---|
| 1758 | http://wiki.apache.org/solr/SpatialSearch and the example. Refactored some items in Lucene spatial. |
---|
| 1759 | Removed SpatialTileField as the underlying CartesianTier is broken beyond repair and is going to be moved. (gsingers) |
---|
| 1760 | |
---|
| 1761 | * SOLR-2128: Full parameter substitution for function queries. |
---|
| 1762 | Example: q=add($v1,$v2)&v1=mul(popularity,5)&v2=20.0 |
---|
| 1763 | (yonik) |
---|
| 1764 | |
---|
| 1765 | * SOLR-2133: Function query parser can now parse multiple comma separated |
---|
| 1766 | value sources. It also now fails if there is extra unexpected text |
---|
| 1767 | after parsing the functions, instead of silently ignoring it. |
---|
| 1768 | This allows expressions like q=dist(2,vector(1,2),$pt)&pt=3,4 (yonik) |
---|
| 1769 | |
---|
| 1770 | * SOLR-2157: Suggester should return alpha-sorted results when onlyMorePopular=false (ab) |
---|
| 1771 | |
---|
| 1772 | * SOLR-2010: Added ability to verify that spell checking collations have |
---|
| 1773 | actual results in the index. (James Dyer via gsingers) |
---|
| 1774 | |
---|
| 1775 | * SOLR-2188: Added "maxTokenLength" argument to the factories for ClassicTokenizer, |
---|
| 1776 | StandardTokenizer, and UAX29URLEmailTokenizer. (Steven Rowe) |
---|
| 1777 | |
---|
| 1778 | * SOLR-2129: Added a Solr module for dynamic metadata extraction/indexing with Apache UIMA. |
---|
| 1779 | See contrib/uima/README.txt for more information. (Tommaso Teofili via rmuir) |
---|
| 1780 | |
---|
| 1781 | * SOLR-2325: Allow tagging and exclusion of main query for faceting. (yonik) |
---|
| 1782 | |
---|
| 1783 | * SOLR-2263: Add ability for RawResponseWriter to stream binary files as well as |
---|
| 1784 | text files. (Eric Pugh via yonik) |
---|
| 1785 | |
---|
| 1786 | * SOLR-860: Add debug output for MoreLikeThis. (koji) |
---|
| 1787 | |
---|
| 1788 | * SOLR-1057: Add PathHierarchyTokenizerFactory. (ryan, koji) |
---|
| 1789 | |
---|
| 1790 | Optimizations |
---|
| 1791 | ---------------------- |
---|
| 1792 | |
---|
| 1793 | * SOLR-1679: Don't build up string messages in SolrCore.execute unless they |
---|
| 1794 | are necessary for the current log level. |
---|
| 1795 | (Fuad Efendi and hossman) |
---|
| 1796 | |
---|
| 1797 | * SOLR-1874: Optimize PatternReplaceFilter for better performance. (rmuir, uschindler) |
---|
| 1798 | |
---|
| 1799 | * SOLR-1968: speed up initial filter cache population for facet.method=enum and |
---|
| 1800 | also big terms for multi-valued facet.method=fc. The resulting speedup |
---|
| 1801 | for the first facet request is anywhere from 30% to 32x, depending on how many |
---|
| 1802 | terms are in the field and how many documents match per term. (yonik) |
---|
| 1803 | |
---|
| 1804 | * SOLR-2089: Speed up UnInvertedField faceting (facet.method=fc for |
---|
| 1805 | multi-valued fields) when facet.limit is both high, and a high enough |
---|
| 1806 | percentage of the number of unique terms in the field. Extreme cases |
---|
| 1807 | yield speedups over 3x. (yonik) |
---|
| 1808 | |
---|
| 1809 | * SOLR-2046: add common functions to scripts-util. (koji) |
---|
| 1810 | |
---|
| 1811 | Bug Fixes |
---|
| 1812 | ---------------------- |
---|
| 1813 | * SOLR-1769: Solr 1.4 Replication - Repeater throwing NullPointerException (Jörgen Rydenius via noble) |
---|
| 1814 | |
---|
| 1815 | * SOLR-1432: Make the new ValueSource.getValues(context,reader) delegate |
---|
| 1816 | to the original ValueSource.getValues(reader) so custom sources |
---|
| 1817 | will work. (yonik) |
---|
| 1818 | |
---|
| 1819 | * SOLR-1572: FastLRUCache correctly implemented the LRU policy only |
---|
| 1820 | for the first 2B accesses. (yonik) |
---|
| 1821 | |
---|
| 1822 | * SOLR-1582: copyField was ignored for BinaryField types (gsingers) |
---|
| 1823 | |
---|
| 1824 | * SOLR-1563: Binary fields, including trie-based numeric fields, caused null |
---|
| 1825 | pointer exceptions in the luke request handler. (yonik) |
---|
| 1826 | |
---|
| 1827 | * SOLR-1577: The example solrconfig.xml defaulted to a solr data dir |
---|
| 1828 | relative to the current working directory, even if a different solr home |
---|
| 1829 | was being used. The new behavior changes the default to a zero length |
---|
| 1830 | string, which is treated the same as if no dataDir had been specified, |
---|
| 1831 | hence the "data" directory under the solr home will be used. (yonik) |
---|
| 1832 | |
---|
| 1833 | * SOLR-1584: SolrJ - SolrQuery.setIncludeScore() incorrectly added |
---|
| 1834 | fl=score to the parameter list instead of appending score to the |
---|
| 1835 | existing field list. (yonik) |
---|
| 1836 | |
---|
| 1837 | * SOLR-1580: Solr Configuration ignores 'mergeFactor' parameter, always |
---|
| 1838 | uses Lucene default. (Lance Norskog via Mark Miller) |
---|
| 1839 | |
---|
| 1840 | * SOLR-1593: ReverseWildcardFilter didn't work for surrogate pairs |
---|
| 1841 | (i.e. code points outside of the BMP), resulting in incorrect |
---|
| 1842 | matching. This change requires reindexing for any content with |
---|
| 1843 | such characters. (Robert Muir, yonik) |
---|
| 1844 | |
---|
| 1845 | * SOLR-1596: A rollback operation followed by the shutdown of Solr |
---|
| 1846 | or the close of a core resulted in a warning: |
---|
| 1847 | "SEVERE: SolrIndexWriter was not closed prior to finalize()" although |
---|
| 1848 | there were no other consequences. (yonik) |
---|
| 1849 | |
---|
| 1850 | * SOLR-1595: StreamingUpdateSolrServer used the platform default character |
---|
| 1851 | set when streaming updates, rather than using UTF-8 as the HTTP headers |
---|
| 1852 | indicated, leading to an encoding mismatch. (hossman, yonik) |
---|
| 1853 | |
---|
| 1854 | * SOLR-1587: A distributed search request with fl=score, didn't match |
---|
| 1855 | the behavior of a non-distributed request since it only returned |
---|
| 1856 | the id,score fields instead of all fields in addition to score. (yonik) |
---|
| 1857 | |
---|
| 1858 | * SOLR-1601: Schema browser does not indicate presence of charFilter. (koji) |
---|
| 1859 | |
---|
| 1860 | * SOLR-1615: Backslash escaping did not work in quoted strings |
---|
| 1861 | for local param arguments. (Wojtek Piaseczny, yonik) |
---|
| 1862 | |
---|
| 1863 | * SOLR-1628: log contains incorrect number of adds and deletes. |
---|
| 1864 | (Thijs Vonk via yonik) |
---|
| 1865 | |
---|
| 1866 | * SOLR-343: Date faceting now respects facet.mincount limiting |
---|
| 1867 | (Uri Boness, Raiko Eckstein via hossman) |
---|
| 1868 | |
---|
| 1869 | * SOLR-1624: Highlighter only highlights values from the first field value |
---|
| 1870 | in a multivalued field when term positions (term vectors) are stored. |
---|
| 1871 | (Chris Harris via yonik) |
---|
| 1872 | |
---|
| 1873 | * SOLR-1635: Fixed error message when numeric values can't be parsed by |
---|
| 1874 | DOMUtils - notably for plugin init params in solrconfig.xml. |
---|
| 1875 | (hossman) |
---|
| 1876 | |
---|
| 1877 | * SOLR-1651: Fixed Incorrect dataimport handler package name in SolrResourceLoader |
---|
| 1878 | (Akshay Ukey via shalin) |
---|
| 1879 | |
---|
| 1880 | * SOLR-1660: CapitalizationFilter crashes if you use the maxWordCountOption |
---|
| 1881 | (Robert Muir via shalin) |
---|
| 1882 | |
---|
| 1883 | * SOLR-1667: PatternTokenizer does not reset attributes such as positionIncrementGap |
---|
| 1884 | (Robert Muir via shalin) |
---|
| 1885 | |
---|
| 1886 | * SOLR-1711: SolrJ - StreamingUpdateSolrServer had a race condition that |
---|
| 1887 | could halt the streaming of documents. The original patch to fix this |
---|
| 1888 | (never officially released) introduced another hanging bug due to |
---|
| 1889 | connections not being released. |
---|
| 1890 | (Attila Babo, Erik Hetzner, Johannes Tuchscherer via yonik) |
---|
| 1891 | |
---|
| 1892 | * SOLR-1748, SOLR-1747, SOLR-1746, SOLR-1745, SOLR-1744: Streams and Readers |
---|
| 1893 | retrieved from ContentStreams are not closed in various places, resulting |
---|
| 1894 | in file descriptor leaks. |
---|
| 1895 | (Christoff Brill, Mark Miller) |
---|
| 1896 | |
---|
| 1897 | * SOLR-1753: StatsComponent throws NPE when getting statistics for facets in distributed search |
---|
| 1898 | (Janne Majaranta via koji) |
---|
| 1899 | |
---|
| 1900 | * SOLR-1736:In the slave , If 'mov'ing file does not succeed , copy the file (noble) |
---|
| 1901 | |
---|
| 1902 | * SOLR-1579: Fixes to XML escaping in stats.jsp |
---|
| 1903 | (David Bowen and hossman) |
---|
| 1904 | |
---|
| 1905 | * SOLR-1777: fieldTypes with sortMissingLast=true or sortMissingFirst=true can |
---|
| 1906 | result in incorrectly sorted results. (yonik) |
---|
| 1907 | |
---|
| 1908 | * SOLR-1798: Small memory leak (~100 bytes) in fastLRUCache for every |
---|
| 1909 | commit. (yonik) |
---|
| 1910 | |
---|
| 1911 | * SOLR-1823: Fixed XMLResponseWriter (via XMLWriter) so it no longer throws |
---|
| 1912 | a ClassCastException when a Map containing a non-String key is used. |
---|
| 1913 | (Frank Wesemann, hossman) |
---|
| 1914 | |
---|
| 1915 | * SOLR-1797: fix ConcurrentModificationException and potential memory |
---|
| 1916 | leaks in ResourceLoader. (yonik) |
---|
| 1917 | |
---|
| 1918 | * SOLR-1850: change KeepWordFilter so a new word set is not created for |
---|
| 1919 | each instance (John Wang via yonik) |
---|
| 1920 | |
---|
| 1921 | * SOLR-1706: fixed WordDelimiterFilter for certain combinations of options |
---|
| 1922 | where it would output incorrect tokens. (Robert Muir, Chris Male) |
---|
| 1923 | |
---|
| 1924 | * SOLR-1936: The JSON response format needed to escape unicode code point |
---|
| 1925 | U+2028 - 'LINE SEPARATOR' (Robert Hofstra, yonik) |
---|
| 1926 | |
---|
| 1927 | * SOLR-1914: Change the JSON response format to output float/double |
---|
| 1928 | values of NaN,Infinity,-Infinity as strings. (yonik) |
---|
| 1929 | |
---|
| 1930 | * SOLR-1948: PatternTokenizerFactory should use parent's args (koji) |
---|
| 1931 | |
---|
| 1932 | * SOLR-1870: Indexing documents using the 'javabin' format no longer |
---|
| 1933 | fails with a ClassCastException whenSolrInputDocuments contain field |
---|
| 1934 | values which are Collections or other classes that implement |
---|
| 1935 | Iterable. (noble, hossman) |
---|
| 1936 | |
---|
| 1937 | * SOLR-1981: Solr will now fail correctly if solr.xml attempts to |
---|
| 1938 | specify multiple cores that have the same name (hossman) |
---|
| 1939 | |
---|
| 1940 | * SOLR-1791: Fix messed up core names on admin gui (yonik via koji) |
---|
| 1941 | |
---|
| 1942 | * SOLR-1995: Change date format from "hour in am/pm" to "hour in day" |
---|
| 1943 | in CoreContainer and SnapShooter. (Hayato Ito, koji) |
---|
| 1944 | |
---|
| 1945 | * SOLR-2008: avoid possible RejectedExecutionException w/autoCommit |
---|
| 1946 | by making SolreCore close the UpdateHandler before closing the |
---|
| 1947 | SearchExecutor. (NarasimhaRaju, hossman) |
---|
| 1948 | |
---|
| 1949 | * SOLR-2036: Avoid expensive fieldCache ram estimation for the |
---|
| 1950 | admin stats page. (yonik) |
---|
| 1951 | |
---|
| 1952 | * SOLR-2047: ReplicationHandler should accept bool type for enable flag. (koji) |
---|
| 1953 | |
---|
| 1954 | * SOLR-1630: Fix spell checking collation issue related to token positions (rmuir, gsingers) |
---|
| 1955 | |
---|
| 1956 | * SOLR-2100: The replication handler backup command didn't save the commit |
---|
| 1957 | point and hence could fail when a newer commit caused the older commit point |
---|
| 1958 | to be removed before it was finished being copied. This did not affect |
---|
| 1959 | normal master/slave replication. (Peter Sturge via yonik) |
---|
| 1960 | |
---|
| 1961 | * SOLR-2114: Fixed parsing error in hsin function. The function signature has changed slightly. (gsingers) |
---|
| 1962 | |
---|
| 1963 | * SOLR-2083: SpellCheckComponent misreports suggestions when distributed (James Dyer via gsingers) |
---|
| 1964 | |
---|
| 1965 | * SOLR-2111: Change exception handling in distributed faceting to work more |
---|
| 1966 | like non-distributed faceting, change facet_counts/exception from a String |
---|
| 1967 | to a List<String> to enable listing all exceptions that happened, and |
---|
| 1968 | prevent an exception in one facet command from affecting another |
---|
| 1969 | facet command. (yonik) |
---|
| 1970 | |
---|
| 1971 | * SOLR-2110: Remove the restriction on names for local params |
---|
| 1972 | substitution/dereferencing. Properly encode local params in |
---|
| 1973 | distributed faceting. (yonik) |
---|
| 1974 | |
---|
| 1975 | * SOLR-2135: Fix behavior of ConcurrentLRUCache when asking for |
---|
| 1976 | getLatestAccessedItems(0) or getOldestAccessedItems(0). |
---|
| 1977 | (David Smiley via hossman) |
---|
| 1978 | |
---|
| 1979 | * SOLR-2148: Highlighter doesn't support q.alt. (koji) |
---|
| 1980 | |
---|
| 1981 | * SOLR-2180: It was possible for EmbeddedSolrServer to leave searchers |
---|
| 1982 | open if a request threw an exception. (yonik) |
---|
| 1983 | |
---|
| 1984 | * SOLR-2173: Suggester should always rebuild Lookup data if Lookup.load fails. (ab) |
---|
| 1985 | |
---|
| 1986 | * SOLR-2081: BaseResponseWriter.isStreamingDocs causes |
---|
| 1987 | SingleResponseWriter.end to be called 2x |
---|
| 1988 | (Chris A. Mattmann via hossman) |
---|
| 1989 | |
---|
| 1990 | * SOLR-2219: The init() method of every SolrRequestHandler was being |
---|
| 1991 | called twice. (ambikeshwar singh and hossman) |
---|
| 1992 | |
---|
| 1993 | * SOLR-2285: duplicate SolrEventListeners no longer created (hossman) |
---|
| 1994 | |
---|
| 1995 | * SOLR-1993: fix String cast assumption in JavaBinCodec - specific |
---|
| 1996 | addresses "commitWithin" option on Update requests. |
---|
| 1997 | (noble, hossman, and Maxim Valyanskiy) |
---|
| 1998 | |
---|
| 1999 | * SOLR-2261: fix velocity template layout.vm that referred to an older |
---|
| 2000 | version of jquery. (Eric Pugh via rmuir) |
---|
| 2001 | |
---|
| 2002 | * SOLR-2307: fix bug in PHPSerializedResponseWriter (wt=phps) when |
---|
| 2003 | dealing with SolrDocumentList objects -- ie: sharded queries. |
---|
| 2004 | (Antonio Verni via hossman) |
---|
| 2005 | |
---|
| 2006 | * SOLR-2127: Fixed serialization of default core and indentation of solr.xml when serializing. |
---|
| 2007 | (Ephraim Ofir, Mark Miller) |
---|
| 2008 | |
---|
| 2009 | * SOLR-2320: Fixed ReplicationHandler detail reporting for masters |
---|
| 2010 | (hossman) |
---|
| 2011 | |
---|
| 2012 | * SOLR-482: Provide more exception handling in CSVLoader (gsingers) |
---|
| 2013 | |
---|
| 2014 | * SOLR-1283: HTMLStripCharFilter sometimes threw a "Mark Invalid" exception. |
---|
| 2015 | (Julien Coloos, hossman, yonik) |
---|
| 2016 | |
---|
| 2017 | * SOLR-2085: Improve SolrJ behavior when FacetComponent comes before |
---|
| 2018 | QueryComponent (Tomas Salfischberger via hossman) |
---|
| 2019 | |
---|
| 2020 | * SOLR-1940: Fix SolrDispatchFilter behavior when Content-Type is |
---|
| 2021 | unknown (Lance Norskog and hossman) |
---|
| 2022 | |
---|
| 2023 | * SOLR-1983: snappuller fails when modifiedConfFiles is not empty and |
---|
| 2024 | full copy of index is needed. (Alexander Kanarsky via yonik) |
---|
| 2025 | |
---|
| 2026 | * SOLR-2156: SnapPuller fails to clean Old Index Directories on Full Copy |
---|
| 2027 | (Jayendra Patil via yonik) |
---|
| 2028 | |
---|
| 2029 | * SOLR-96: Fix XML parsing in XMLUpdateRequestHandler and |
---|
| 2030 | DocumentAnalysisRequestHandler to respect charset from XML file and only |
---|
| 2031 | use HTTP header's "Content-Type" as a "hint". (uschindler) |
---|
| 2032 | |
---|
| 2033 | * SOLR-2339: Fix sorting to explicitly generate an error if you |
---|
| 2034 | attempt to sort on a multiValued field. (hossman) |
---|
| 2035 | |
---|
| 2036 | * SOLR-2348: Fix field types to explicitly generate an error if you |
---|
| 2037 | attempt to get a ValueSource for a multiValued field. (hossman) |
---|
| 2038 | |
---|
| 2039 | * SOLR-2380: Distributed faceting could miss values when facet.sort=index |
---|
| 2040 | and when facet.offset was greater than 0. (yonik) |
---|
| 2041 | |
---|
| 2042 | * SOLR-1656: XIncludes and other HREFs in XML files loaded by ResourceLoader |
---|
| 2043 | are fixed to be resolved using the URI standard (RFC 2396). The system |
---|
| 2044 | identifier is no longer a plain filename with path, it gets initialized |
---|
| 2045 | using a custom URI scheme "solrres:". This scheme is resolved using a |
---|
| 2046 | EntityResolver that utilizes ResourceLoader |
---|
| 2047 | (org.apache.solr.common.util.SystemIdResolver). This makes all relative |
---|
| 2048 | pathes in Solr's config files behave like expected. This change |
---|
| 2049 | introduces some backwards breaks in the API: Some config classes |
---|
| 2050 | (Config, SolrConfig, IndexSchema) were changed to take |
---|
| 2051 | org.xml.sax.InputSource instead of InputStream. There may also be some |
---|
| 2052 | backwards breaks in existing config files, it is recommended to check |
---|
| 2053 | your config files / XSLTs and replace all XIncludes/HREFs that were |
---|
| 2054 | hacked to use absolute paths to use relative ones. (uschindler) |
---|
| 2055 | |
---|
| 2056 | * SOLR-309: Fix FieldType so setting an analyzer on a FieldType that |
---|
| 2057 | doesn't expect it will generate an error. Practically speaking this |
---|
| 2058 | means that Solr will now correctly generate an error on |
---|
| 2059 | initialization if the schema.xml contains an analyzer configuration |
---|
| 2060 | for a fieldType that does not use TextField. (hossman) |
---|
| 2061 | |
---|
| 2062 | * SOLR-2192: StreamingUpdateSolrServer.blockUntilFinished was not |
---|
| 2063 | thread safe and could throw an exception. (yonik) |
---|
| 2064 | |
---|
| 2065 | Other Changes |
---|
| 2066 | ---------------------- |
---|
| 2067 | |
---|
| 2068 | * SOLR-1602: Refactor SOLR package structure to include o.a.solr.response |
---|
| 2069 | and move QueryResponseWriters in there |
---|
| 2070 | (Chris A. Mattmann, ryan, hoss) |
---|
| 2071 | |
---|
| 2072 | * SOLR-1516: Addition of an abstract BaseResponseWriter class to simplify the |
---|
| 2073 | development of QueryResponseWriter implementations. |
---|
| 2074 | (Chris A. Mattmann via noble) |
---|
| 2075 | |
---|
| 2076 | * SOLR-1592: Refactor XMLWriter startTag to allow arbitrary attributes to be written |
---|
| 2077 | (Chris A. Mattmann via noble) |
---|
| 2078 | |
---|
| 2079 | * SOLR-1561: Added Lucene 2.9.1 spatial contrib jar to lib. (gsingers) |
---|
| 2080 | |
---|
| 2081 | * SOLR-1570: Log warnings if uniqueKey is multi-valued or not stored (hossman, shalin) |
---|
| 2082 | |
---|
| 2083 | * SOLR-1558: QueryElevationComponent only works if the uniqueKey field is |
---|
| 2084 | implemented using StrField. In previous versions of Solr no warning or |
---|
| 2085 | error would be generated if you attempted to use QueryElevationComponent, |
---|
| 2086 | it would just fail in unexpected ways. This has been changed so that it |
---|
| 2087 | will fail with a clear error message on initialization. (hossman) |
---|
| 2088 | |
---|
| 2089 | * SOLR-1611: Added Lucene 2.9.1 collation contrib jar to lib (shalin) |
---|
| 2090 | |
---|
| 2091 | * SOLR-1608: Extract base class from TestDistributedSearch to make |
---|
| 2092 | it easy to write test cases for other distributed components. (shalin) |
---|
| 2093 | |
---|
| 2094 | * Upgraded to Lucene 2.9-dev r888785 (shalin) |
---|
| 2095 | |
---|
| 2096 | * SOLR-1610: Generify SolrCache (Jason Rutherglen via shalin) |
---|
| 2097 | |
---|
| 2098 | * SOLR-1637: Remove ALIAS command |
---|
| 2099 | |
---|
| 2100 | * SOLR-1662: Added Javadocs in BufferedTokenStream and fixed incorrect cloning |
---|
| 2101 | in TestBufferedTokenStream (Robert Muir, Uwe Schindler via shalin) |
---|
| 2102 | |
---|
| 2103 | * SOLR-1674: Improve analysis tests and cut over to new TokenStream API. |
---|
| 2104 | (Robert Muir via Mark Miller) |
---|
| 2105 | |
---|
| 2106 | * SOLR-1661: Remove adminCore from CoreContainer . removed deprecated methods setAdminCore(), getAdminCore() (noble) |
---|
| 2107 | |
---|
| 2108 | * SOLR-1704: Google collections moved from clustering to core (noble) |
---|
| 2109 | |
---|
| 2110 | * SOLR-1268: Add Lucene 2.9-dev r888785 FastVectorHighlighter contrib jar to lib. (koji) |
---|
| 2111 | |
---|
| 2112 | * SOLR-1538: Reordering of object allocations in ConcurrentLRUCache to eliminate |
---|
| 2113 | (an extremely small) potential for deadlock. |
---|
| 2114 | (gabriele renzi via hossman) |
---|
| 2115 | |
---|
| 2116 | * SOLR-1588: Removed some very old dead code. |
---|
| 2117 | (Chris A. Mattmann via hossman) |
---|
| 2118 | |
---|
| 2119 | * SOLR-1696 : Deprecate old <highlighting> syntax and move configuration to HighlightComponent (noble) |
---|
| 2120 | |
---|
| 2121 | * SOLR-1727: SolrEventListener should extend NamedListInitializedPlugin (noble) |
---|
| 2122 | |
---|
| 2123 | * SOLR-1771: Improved error message when StringIndex cannot be initialized |
---|
| 2124 | for a function query (hossman) |
---|
| 2125 | |
---|
| 2126 | * SOLR-1695: Improved error messages when adding a document that does not |
---|
| 2127 | contain exactly one value for the uniqueKey field (hossman) |
---|
| 2128 | |
---|
| 2129 | * SOLR-1776: DismaxQParser and ExtendedDismaxQParser now use the schema.xml |
---|
| 2130 | "defaultSearchField" as the default value for the "qf" param instead of failing |
---|
| 2131 | with an error when "qf" is not specified. (hossman) |
---|
| 2132 | |
---|
| 2133 | * SOLR-1851: luceneAutoCommit no longer has any effect - it has been remove (Mark Miller) |
---|
| 2134 | |
---|
| 2135 | * SOLR-1865: SolrResourceLoader.getLines ignores Byte Order Markers (BOMs) at the |
---|
| 2136 | beginning of input files, these are often created by editors such as Windows |
---|
| 2137 | Notepad. (rmuir, hossman) |
---|
| 2138 | |
---|
| 2139 | * SOLR-1938: ElisionFilterFactory will use a default set of French contractions |
---|
| 2140 | if you do not supply a custom articles file. (rmuir) |
---|
| 2141 | |
---|
| 2142 | * SOLR-2003: SolrResourceLoader will report any encoding errors, rather than |
---|
| 2143 | silently using replacement characters for invalid inputs (blargy via rmuir) |
---|
| 2144 | |
---|
| 2145 | * SOLR-1804: Google collections updated to Google Guava (which is a superset of collections and contains bug fixes) (gsingers) |
---|
| 2146 | |
---|
| 2147 | * SOLR-2034: Switch to JavaBin codec version 2. Strings are now serialized |
---|
| 2148 | as the number of UTF-8 bytes, followed by the bytes in UTF-8. Previously |
---|
| 2149 | Strings were serialized as the number of UTF-16 chars, followed by the |
---|
| 2150 | bytes in Modified UTF-8. (hossman, yonik, rmuir) |
---|
| 2151 | |
---|
| 2152 | * SOLR-2013: Add mapping-FoldToASCII.txt to example conf directory. |
---|
| 2153 | (Steven Rowe via koji) |
---|
| 2154 | |
---|
| 2155 | * SOLR-2213: Upgrade to jQuery 1.4.3 (Erick Erickson via ryan) |
---|
| 2156 | |
---|
| 2157 | * SOLR-1826: Add unit tests for highlighting with termOffsets=true |
---|
| 2158 | and overlapping tokens. (Stefan Oestreicher via rmuir) |
---|
| 2159 | |
---|
| 2160 | * SOLR-2340: Add version infos to message in JavaBinCodec when throwing |
---|
| 2161 | exception. (koji) |
---|
| 2162 | |
---|
| 2163 | * SOLR-2350: Since Solr no longer requires XML files to be in UTF-8 |
---|
| 2164 | (see SOLR-96) SimplePostTool (aka: post.jar) has been improved to |
---|
| 2165 | work with files of any mime-type or charset. (hossman) |
---|
| 2166 | |
---|
| 2167 | * SOLR-2365: Move DIH jars out of solr.war (David Smiley via yonik) |
---|
| 2168 | |
---|
| 2169 | * SOLR-2381: Include a patched version of Jetty (6.1.26 + JETTY-1340) |
---|
| 2170 | to fix problematic UTF-8 handling for supplementary characters. |
---|
| 2171 | (Bernd Fehling, uschindler, yonik, rmuir) |
---|
| 2172 | |
---|
| 2173 | * SOLR-2391: The preferred Content-Type for XML was changed to |
---|
| 2174 | application/xml. XMLResponseWriter now only delivers using this |
---|
| 2175 | type; updating documents and analyzing documents is still supported |
---|
| 2176 | using text/xml as Content-Type, too. If you have clients that are |
---|
| 2177 | hardcoded on text/xml as Content-Type, you have to change them. |
---|
| 2178 | (uschindler, rmuir) |
---|
| 2179 | |
---|
| 2180 | * SOLR-2414: All ResponseWriters now use only ServletOutputStreams |
---|
| 2181 | and wrap their own Writer around it when serializing. This fixes |
---|
| 2182 | the bug in PHPSerializedResponseWriter that produced wrong string |
---|
| 2183 | length if the servlet container had a broken UTF-8 encoding that was |
---|
| 2184 | in fact CESU-8 (see SOLR-1091). The system property to enable the |
---|
| 2185 | CESU-8 byte counting in PHPSerializesResponseWriters for broken |
---|
| 2186 | servlet containers was therefore removed and is now ignored if set. |
---|
| 2187 | Output is always UTF-8. (uschindler, yonik, rmuir) |
---|
| 2188 | |
---|
| 2189 | * SOLR-141: Errors and Exceptions are formated by ResponseWriter. |
---|
| 2190 | (Mike Sokolov, Rich Cariens, Daniel Naber, ryan) |
---|
| 2191 | |
---|
| 2192 | |
---|
| 2193 | Build |
---|
| 2194 | ---------------------- |
---|
| 2195 | |
---|
| 2196 | * SOLR-1522: Automated release signing process. (gsingers) |
---|
| 2197 | |
---|
| 2198 | * SOLR-1891: Make lucene-jars-to-solr fail if copying any of the jars fails, and |
---|
| 2199 | update clean to remove the jars in that directory (Mark Miller) |
---|
| 2200 | |
---|
| 2201 | * LUCENE-2466: Commons-Codec was upgraded from 1.3 to 1.4. (rmuir) |
---|
| 2202 | |
---|
| 2203 | * SOLR-2042: Fixed some Maven deps (Drew Farris via gsingers) |
---|
| 2204 | |
---|
| 2205 | * LUCENE-2657: Switch from using Maven POM templates to full POMs when |
---|
| 2206 | generating Maven artifacts (Steven Rowe) |
---|
| 2207 | |
---|
| 2208 | Documentation |
---|
| 2209 | ---------------------- |
---|
| 2210 | |
---|
| 2211 | * SOLR-1590: Javadoc for XMLWriter#startTag |
---|
| 2212 | (Chris A. Mattmann via hossman) |
---|
| 2213 | |
---|
| 2214 | * SOLR-1792: Documented peculiar behavior of TestHarness.LocalRequestFactory |
---|
| 2215 | (hossman) |
---|
| 2216 | |
---|
| 2217 | ================== Release 1.4.0 ================== |
---|
| 2218 | Release Date: See http://lucene.apache.org/solr for the official release date. |
---|
| 2219 | |
---|
| 2220 | Upgrading from Solr 1.3 |
---|
| 2221 | ----------------------- |
---|
| 2222 | |
---|
| 2223 | There is a new default faceting algorithm for multiVaued fields that should be |
---|
| 2224 | faster for most cases. One can revert to the previous algorithm (which has |
---|
| 2225 | also been improved somewhat) by adding facet.method=enum to the request. |
---|
| 2226 | |
---|
| 2227 | Searching and sorting is now done on a per-segment basis, meaning that |
---|
| 2228 | the FieldCache entries used for sorting and for function queries are |
---|
| 2229 | created and used per-segment and can be reused for segments that don't |
---|
| 2230 | change between index updates. While generally beneficial, this can lead |
---|
| 2231 | to increased memory usage over 1.3 in certain scenarios: |
---|
| 2232 | 1) A single valued field that was used for both sorting and faceting |
---|
| 2233 | in 1.3 would have used the same top level FieldCache entry. In 1.4, |
---|
| 2234 | sorting will use entries at the segment level while faceting will still |
---|
| 2235 | use entries at the top reader level, leading to increased memory usage. |
---|
| 2236 | 2) Certain function queries such as ord() and rord() require a top level |
---|
| 2237 | FieldCache instance and can thus lead to increased memory usage. Consider |
---|
| 2238 | replacing ord() and rord() with alternatives, such as function queries |
---|
| 2239 | based on ms() for date boosting. |
---|
| 2240 | |
---|
| 2241 | If you use custom Tokenizer or TokenFilter components in a chain specified in |
---|
| 2242 | schema.xml, they must support reusability. If your Tokenizer or TokenFilter |
---|
| 2243 | maintains state, it should implement reset(). If your TokenFilteFactory does |
---|
| 2244 | not return a subclass of TokenFilter, then it should implement reset() and call |
---|
| 2245 | reset() on it's input TokenStream. TokenizerFactory implementations must |
---|
| 2246 | now return a Tokenizer rather than a TokenStream. |
---|
| 2247 | |
---|
| 2248 | New users of Solr 1.4 will have omitTermFreqAndPositions enabled for non-text |
---|
| 2249 | indexed fields by default, which avoids indexing term frequency, positions, and |
---|
| 2250 | payloads, making the index smaller and faster. If you are upgrading from an |
---|
| 2251 | earlier Solr release and want to enable omitTermFreqAndPositions by default, |
---|
| 2252 | change the schema version from 1.1 to 1.2 in schema.xml. Remove any existing |
---|
| 2253 | index and restart Solr to ensure that omitTermFreqAndPositions completely takes |
---|
| 2254 | affect. |
---|
| 2255 | |
---|
| 2256 | The default QParserPlugin used by the QueryComponent for parsing the "q" param |
---|
| 2257 | has been changed, to remove support for the deprecated use of ";" as a separator |
---|
| 2258 | between the query string and the sort options when no "sort" param was used. |
---|
| 2259 | Users who wish to continue using the semi-colon based method of specifying the |
---|
| 2260 | sort options should explicitly set the defType param to "lucenePlusSort" on all |
---|
| 2261 | requests. (The simplest way to do this is by specifying it as a default param |
---|
| 2262 | for your request handlers in solrconfig.xml, see the example solrconfig.xml for |
---|
| 2263 | sample syntax.) |
---|
| 2264 | |
---|
| 2265 | If spellcheck.extendedResults=true, the response format for suggestions |
---|
| 2266 | has changed, see SOLR-1071. |
---|
| 2267 | |
---|
| 2268 | Use of the "charset" option when configuring the following Analysis |
---|
| 2269 | Factories has been deprecated and will cause a warning to be logged. |
---|
| 2270 | In future versions of Solr attempting to use this option will cause an |
---|
| 2271 | error. See SOLR-1410 for more information. |
---|
| 2272 | * GreekLowerCaseFilterFactory |
---|
| 2273 | * RussianStemFilterFactory |
---|
| 2274 | * RussianLowerCaseFilterFactory |
---|
| 2275 | * RussianLetterTokenizerFactory |
---|
| 2276 | |
---|
| 2277 | Versions of Major Components |
---|
| 2278 | ---------------------------- |
---|
| 2279 | Apache Lucene 2.9.1 (r832363 on 2.9 branch) |
---|
| 2280 | Apache Tika 0.4 |
---|
| 2281 | Carrot2 3.1.0 |
---|
| 2282 | |
---|
| 2283 | Lucene Information |
---|
| 2284 | ---------------- |
---|
| 2285 | |
---|
| 2286 | Since Solr is built on top of Lucene, many people add customizations to Solr |
---|
| 2287 | that are dependent on Lucene. Please see http://lucene.apache.org/java/2_9_0/, |
---|
| 2288 | especially http://lucene.apache.org/java/2_9_0/changes/Changes.html for more |
---|
| 2289 | information on the version of Lucene used in Solr. |
---|
| 2290 | |
---|
| 2291 | Detailed Change List |
---|
| 2292 | ---------------------- |
---|
| 2293 | |
---|
| 2294 | New Features |
---|
| 2295 | ---------------------- |
---|
| 2296 | 1. SOLR-560: Use SLF4J logging API rather then JDK logging. The packaged .war file is |
---|
| 2297 | shipped with a JDK logging implementation, so logging configuration for the .war should |
---|
| 2298 | be identical to solr 1.3. However, if you are using the .jar file, you can select |
---|
| 2299 | which logging implementation to use by dropping a different binding. |
---|
| 2300 | See: http://www.slf4j.org/ (ryan) |
---|
| 2301 | |
---|
| 2302 | 2. SOLR-617: Allow configurable index deletion policy and provide a default implementation which |
---|
| 2303 | allows deletion of commit points on various criteria such as number of commits, age of commit |
---|
| 2304 | point and optimized status. |
---|
| 2305 | See http://lucene.apache.org/java/2_3_2/api/org/apache/lucene/index/IndexDeletionPolicy.html |
---|
| 2306 | (yonik, Noble Paul, Akshay Ukey via shalin) |
---|
| 2307 | |
---|
| 2308 | 3. SOLR-658: Allow Solr to load index from arbitrary directory in dataDir |
---|
| 2309 | (Noble Paul, Akshay Ukey via shalin) |
---|
| 2310 | |
---|
| 2311 | 4. SOLR-793: Add 'commitWithin' argument to the update add command. This behaves |
---|
| 2312 | similar to the global autoCommit maxTime argument except that it is set for |
---|
| 2313 | each request. (ryan) |
---|
| 2314 | |
---|
| 2315 | 5. SOLR-670: Add support for rollbacks in UpdateHandler. This allows user to rollback all changes |
---|
| 2316 | since the last commit. (Noble Paul, koji via shalin) |
---|
| 2317 | |
---|
| 2318 | 6. SOLR-813: Adding DoubleMetaphone Filter and Factory. Similar to the PhoneticFilter, |
---|
| 2319 | but this uses DoubleMetaphone specific calls (including alternate encoding) |
---|
| 2320 | (Todd Feak via ryan) |
---|
| 2321 | |
---|
| 2322 | 7. SOLR-680: Add StatsComponent. This gets simple statistics on matched numeric fields, |
---|
| 2323 | including: min, max, mean, median, stddev. (koji, ryan) |
---|
| 2324 | |
---|
| 2325 | 7.1 SOLR-1380: Added support for multi-valued fields (Harish Agarwal via gsingers) |
---|
| 2326 | |
---|
| 2327 | 8. SOLR-561: Added Replication implemented in Java as a request handler. Supports index replication |
---|
| 2328 | as well as configuration replication and exposes detailed statistics and progress information |
---|
| 2329 | on the Admin page. Works on all platforms. (Noble Paul, yonik, Akshay Ukey, shalin) |
---|
| 2330 | |
---|
| 2331 | 9. SOLR-746: Added "omitHeader" request parameter to omit the header from the response. |
---|
| 2332 | (Noble Paul via shalin) |
---|
| 2333 | |
---|
| 2334 | 10. SOLR-651: Added TermVectorComponent for serving up term vector information, plus IDF. |
---|
| 2335 | See http://wiki.apache.org/solr/TermVectorComponent (gsingers, Vaijanath N. Rao, Noble Paul) |
---|
| 2336 | |
---|
| 2337 | 12. SOLR-795: SpellCheckComponent supports building indices on optimize if configured in solrconfig.xml |
---|
| 2338 | (Jason Rennie, shalin) |
---|
| 2339 | |
---|
| 2340 | 13. SOLR-667: A LRU cache implementation based upon ConcurrentHashMap and other techniques to reduce |
---|
| 2341 | contention and synchronization overhead, to utilize multiple CPU cores more effectively. |
---|
| 2342 | (Fuad Efendi, Noble Paul, yonik via shalin) |
---|
| 2343 | |
---|
| 2344 | 14. SOLR-465: Add configurable DirectoryProvider so that alternate Directory |
---|
| 2345 | implementations can be specified via solrconfig.xml. The default |
---|
| 2346 | DirectoryProvider will use NIOFSDirectory for better concurrency |
---|
| 2347 | on non Windows platforms. (Mark Miller, TJ Laurenzo via yonik) |
---|
| 2348 | |
---|
| 2349 | 15. SOLR-822: Add CharFilter so that characters can be filtered (e.g. character normalization) |
---|
| 2350 | before Tokenizer/TokenFilters. (koji) |
---|
| 2351 | |
---|
| 2352 | 16. SOLR-829: Allow slaves to request compressed files from master during replication |
---|
| 2353 | (Simon Collins, Noble Paul, Akshay Ukey via shalin) |
---|
| 2354 | |
---|
| 2355 | 17. SOLR-877: Added TermsComponent for accessing Lucene's TermEnum capabilities. |
---|
| 2356 | Useful for auto suggest and possibly distributed search. Not distributed search compliant. (gsingers) |
---|
| 2357 | - Added mincount and maxcount options (Khee Chin via gsingers) |
---|
| 2358 | |
---|
| 2359 | 18. SOLR-538: Add maxChars attribute for copyField function so that the length limit for destination |
---|
| 2360 | can be specified. |
---|
| 2361 | (Georgios Stamatis, Lars Kotthoff, Chris Harris via koji) |
---|
| 2362 | |
---|
| 2363 | 19. SOLR-284: Added support for extracting content from binary documents like MS Word and PDF using Apache Tika. See also contrib/extraction/CHANGES.txt (Eric Pugh, Chris Harris, yonik, gsingers) |
---|
| 2364 | |
---|
| 2365 | 20. SOLR-819: Added factories for Arabic support (gsingers) |
---|
| 2366 | |
---|
| 2367 | 21. SOLR-781: Distributed search ability to sort field.facet values |
---|
| 2368 | lexicographically. facet.sort values "true" and "false" are |
---|
| 2369 | also deprecated and replaced with "count" and "lex". |
---|
| 2370 | (Lars Kotthoff via yonik) |
---|
| 2371 | |
---|
| 2372 | 22. SOLR-821: Add support for replication to copy conf file to slave with a different name. This allows replication |
---|
| 2373 | of solrconfig.xml |
---|
| 2374 | (Noble Paul, Akshay Ukey via shalin) |
---|
| 2375 | |
---|
| 2376 | 23. SOLR-911: Add support for multi-select faceting by allowing filters to be |
---|
| 2377 | tagged and facet commands to exclude certain filters. This patch also |
---|
| 2378 | added the ability to change the output key for facets in the response, and |
---|
| 2379 | optimized distributed faceting refinement by lowering parsing overhead and |
---|
| 2380 | by making requests and responses smaller. |
---|
| 2381 | |
---|
| 2382 | 24. SOLR-876: WordDelimiterFilter now supports a splitOnNumerics |
---|
| 2383 | option, as well as a list of protected terms. |
---|
| 2384 | (Dan Rosher via hossman) |
---|
| 2385 | |
---|
| 2386 | 25. SOLR-928: SolrDocument and SolrInputDocument now implement the Map<String,?> |
---|
| 2387 | interface. This should make plugging into other standard tools easier. (ryan) |
---|
| 2388 | |
---|
| 2389 | 26. SOLR-847: Enhance the snappull command in ReplicationHandler to accept masterUrl. |
---|
| 2390 | (Noble Paul, Preetam Rao via shalin) |
---|
| 2391 | |
---|
| 2392 | 27. SOLR-540: Add support for globbing in field names to highlight. |
---|
| 2393 | For example, hl.fl=*_text will highlight all fieldnames ending with |
---|
| 2394 | _text. (Lars Kotthoff via yonik) |
---|
| 2395 | |
---|
| 2396 | 28. SOLR-906: Adding a StreamingUpdateSolrServer that writes update commands to |
---|
| 2397 | an open HTTP connection. If you are using solrj for bulk update requests |
---|
| 2398 | you should consider switching to this implementaion. However, note that |
---|
| 2399 | the error handling is not immediate as it is with the standard SolrServer. |
---|
| 2400 | (ryan) |
---|
| 2401 | |
---|
| 2402 | 29. SOLR-865: Adding support for document updates in binary format and corresponding support in Solrj client. |
---|
| 2403 | (Noble Paul via shalin) |
---|
| 2404 | |
---|
| 2405 | 30. SOLR-763: Add support for Lucene's PositionFilter (Mck SembWever via shalin) |
---|
| 2406 | |
---|
| 2407 | 31. SOLR-966: Enhance the map() function query to take in an optional default value (Noble Paul, shalin) |
---|
| 2408 | |
---|
| 2409 | 32. SOLR-820: Support replication on startup of master with new index. (Noble Paul, Akshay Ukey via shalin) |
---|
| 2410 | |
---|
| 2411 | 33. SOLR-943: Make it possible to specify dataDir in solr.xml and accept the dataDir as a request parameter for |
---|
| 2412 | the CoreAdmin create command. (Noble Paul via shalin) |
---|
| 2413 | |
---|
| 2414 | 34. SOLR-850: Addition of timeouts for distributed searching. Configurable through 'shard-socket-timeout' and |
---|
| 2415 | 'shard-connection-timeout' parameters in SearchHandler. (Patrick O'Leary via shalin) |
---|
| 2416 | |
---|
| 2417 | 35. SOLR-799: Add support for hash based exact/near duplicate document |
---|
| 2418 | handling. (Mark Miller, yonik) |
---|
| 2419 | |
---|
| 2420 | 36. SOLR-1026: Add protected words support to SnowballPorterFilterFactory (ehatcher) |
---|
| 2421 | |
---|
| 2422 | 37. SOLR-739: Add support for OmitTf (Mark Miller via yonik) |
---|
| 2423 | |
---|
| 2424 | 38. SOLR-1046: Nested query support for the function query parser |
---|
| 2425 | and lucene query parser (the latter existed as an undocumented |
---|
| 2426 | feature in 1.3) (yonik) |
---|
| 2427 | |
---|
| 2428 | 39. SOLR-940: Add support for Lucene's Trie Range Queries by providing new FieldTypes in |
---|
| 2429 | schema for int, float, long, double and date. Single-valued Trie based |
---|
| 2430 | fields with a precisionStep will index multiple precisions and enable |
---|
| 2431 | faster range queries. (Uwe Schindler, yonik, shalin) |
---|
| 2432 | |
---|
| 2433 | 40. SOLR-1038: Enhance CommonsHttpSolrServer to add docs in batch using an iterator API (Noble Paul via shalin) |
---|
| 2434 | |
---|
| 2435 | 41. SOLR-844: A SolrServer implementation to front-end multiple solr servers and provides load balancing and failover |
---|
| 2436 | support (Noble Paul, Mark Miller, hossman via shalin) |
---|
| 2437 | |
---|
| 2438 | 42. SOLR-939: ValueSourceRangeFilter/Query - filter based on values in a FieldCache entry or on any arbitrary function of field values. (yonik) |
---|
| 2439 | |
---|
| 2440 | 43. SOLR-1095: Fixed performance problem in the StopFilterFactory and simplified code. Added tests as well. (gsingers) |
---|
| 2441 | |
---|
| 2442 | 44. SOLR-1096: Introduced httpConnTimeout and httpReadTimeout in replication slave configuration to avoid stalled |
---|
| 2443 | replication. (Jeff Newburn, Noble Paul, shalin) |
---|
| 2444 | |
---|
| 2445 | 45. SOLR-1115: <bool>on</bool> and <bool>yes</bool> work as expected in solrconfig.xml. (koji) |
---|
| 2446 | |
---|
| 2447 | 46. SOLR-1099: A FieldAnalysisRequestHandler which provides the analysis functionality of the web admin page as |
---|
| 2448 | a service. The AnalysisRequestHandler is renamed to DocumentAnalysisRequestHandler which is enhanced with |
---|
| 2449 | query analysis and showMatch support. AnalysisRequestHandler is now deprecated. Support for both |
---|
| 2450 | FieldAnalysisRequestHandler and DocumentAnalysisRequestHandler is also provided in the Solrj client. |
---|
| 2451 | (Uri Boness, shalin) |
---|
| 2452 | |
---|
| 2453 | 47. SOLR-1106: Made CoreAdminHandler Actions pluggable so that additional actions may be plugged in or the existing |
---|
| 2454 | ones can be overridden if needed. (Kay Kay, Noble Paul, shalin) |
---|
| 2455 | |
---|
| 2456 | 48. SOLR-1124: Add a top() function query that causes it's argument to |
---|
| 2457 | have it's values derived from the top level IndexReader, even when |
---|
| 2458 | invoked from a sub-reader. top() is implicitly used for the |
---|
| 2459 | ord() and rord() functions. (yonik) |
---|
| 2460 | |
---|
| 2461 | 49. SOLR-1110: Support sorting on trie fields with Distributed Search. (Mark Miller, Uwe Schindler via shalin) |
---|
| 2462 | |
---|
| 2463 | 50. SOLR-1121: CoreAdminhandler should not need a core . This makes it possible to start a Solr server w/o a core .(noble) |
---|
| 2464 | |
---|
| 2465 | 51. SOLR-769: Added support for clustering in contrib/clustering. See http://wiki.apache.org/solr/ClusteringComponent for more info. (gsingers, Stanislaw Osinski) |
---|
| 2466 | |
---|
| 2467 | 52. SOLR-1175: disable/enable replication on master side. added two commands 'enableReplication' and 'disableReplication' (noble) |
---|
| 2468 | |
---|
| 2469 | 53. SOLR-1179: DocSets can now be used as Lucene Filters via |
---|
| 2470 | DocSet.getTopFilter() (yonik) |
---|
| 2471 | |
---|
| 2472 | 54. SOLR-1116: Add a Binary FieldType (noble) |
---|
| 2473 | |
---|
| 2474 | 55. SOLR-1051: Support the merge of multiple indexes as a CoreAdmin and an update command (Ning Li via shalin) |
---|
| 2475 | |
---|
| 2476 | 56. SOLR-1152: Snapshoot on ReplicationHandler should accept location as a request parameter (shalin) |
---|
| 2477 | |
---|
| 2478 | 57. SOLR-1204: Enhance SpellingQueryConverter to handle UTF-8 instead of ASCII only. |
---|
| 2479 | Use the NMTOKEN syntax for matching field names. |
---|
| 2480 | (Michael Ludwig, shalin) |
---|
| 2481 | |
---|
| 2482 | 58. SOLR-1189: Support providing username and password for basic HTTP authentication in Java replication |
---|
| 2483 | (Matthew Gregg, shalin) |
---|
| 2484 | |
---|
| 2485 | 59. SOLR-243: Add configurable IndexReaderFactory so that alternate IndexReader implementations |
---|
| 2486 | can be specified via solrconfig.xml. Note that using a custom IndexReader may be incompatible |
---|
| 2487 | with ReplicationHandler (see comments in SOLR-1366). This should be treated as an experimental feature. |
---|
| 2488 | (Andrzej Bialecki, hossman, Mark Miller, John Wang) |
---|
| 2489 | |
---|
| 2490 | 60. SOLR-1214: differentiate between solr home and instanceDir .deprecates the method SolrResourceLoader#locateInstanceDir() |
---|
| 2491 | and it is renamed to locateSolrHome (noble) |
---|
| 2492 | |
---|
| 2493 | 61. SOLR-1216 : disambiguate the replication command names. 'snappull' becomes 'fetchindex' 'abortsnappull' becomes 'abortfetch' (noble) |
---|
| 2494 | |
---|
| 2495 | 62. SOLR-1145: Add capability to specify an infoStream log file for the underlying Lucene IndexWriter in solrconfig.xml. |
---|
| 2496 | This is an advanced debug log file that can be used to aid developers in fixing IndexWriter bugs. See the commented |
---|
| 2497 | out example in the example solrconfig.xml under the indexDefaults section. |
---|
| 2498 | (Chris Harris, Mark Miller) |
---|
| 2499 | |
---|
| 2500 | 63. SOLR-1256: Show the output of CharFilters in analysis.jsp. (koji) |
---|
| 2501 | |
---|
| 2502 | 64. SOLR-1266: Added stemEnglishPossessive option (default=true) to WordDelimiterFilter |
---|
| 2503 | that allows disabling of english possessive stemming (removal of trailing 's from tokens) |
---|
| 2504 | (Robert Muir via yonik) |
---|
| 2505 | |
---|
| 2506 | 65. SOLR-1237: firstSearcher and newSearcher can now be identified via the CommonParams.EVENT (evt) parameter |
---|
| 2507 | in a request. This allows a RequestHandler or SearchComponent to know when a newSearcher or firstSearcher |
---|
| 2508 | event happened. QuerySenderListender is the only implementation in Solr that implements this, but outside |
---|
| 2509 | implementations may wish to. See the AbstractSolrEventListener for a helper method. (gsingers) |
---|
| 2510 | |
---|
| 2511 | 66. SOLR-1343: Added HTMLStripCharFilter and marked HTMLStripReader, HTMLStripWhitespaceTokenizerFactory and |
---|
| 2512 | HTMLStripStandardTokenizerFactory deprecated. To strip HTML tags, HTMLStripCharFilter can be used |
---|
| 2513 | with an arbitrary Tokenizer. (koji) |
---|
| 2514 | |
---|
| 2515 | 67. SOLR-1275: Add expungeDeletes to DirectUpdateHandler2 (noble) |
---|
| 2516 | |
---|
| 2517 | 68. SOLR-1372: Enhance FieldAnalysisRequestHandler to accept field value from content stream (ehatcher) |
---|
| 2518 | |
---|
| 2519 | 69. SOLR-1370: Show the output of CharFilters in FieldAnalysisRequestHandler (koji) |
---|
| 2520 | |
---|
| 2521 | 70. SOLR-1373: Add Filter query to admin/form.jsp |
---|
| 2522 | (Jason Rutherglen via hossman) |
---|
| 2523 | |
---|
| 2524 | 71. SOLR-1368: Add ms() function query for getting milliseconds from dates and for |
---|
| 2525 | high precision date subtraction, add sub() for subtracting other arguments. |
---|
| 2526 | (yonik) |
---|
| 2527 | |
---|
| 2528 | 72. SOLR-1156: Sort TermsComponent results by frequency (Matt Weber via yonik) |
---|
| 2529 | |
---|
| 2530 | 73. SOLR-1335 : load core properties from a properties file (noble) |
---|
| 2531 | |
---|
| 2532 | 74. SOLR-1385 : Add an 'enable' attribute to all plugins (noble) |
---|
| 2533 | |
---|
| 2534 | 75. SOLR-1414 : implicit core properties are not set for single core (noble) |
---|
| 2535 | |
---|
| 2536 | 76. SOLR-659 : Adds shards.start and shards.rows to distributed search |
---|
| 2537 | to allow more efficient bulk queries (those that retrieve many or all |
---|
| 2538 | documents). (Brian Whitman via yonik) |
---|
| 2539 | |
---|
| 2540 | 77. SOLR-1321: Add better support for efficient wildcard handling (Andrzej Bialecki, Robert Muir, gsingers) |
---|
| 2541 | |
---|
| 2542 | 78. SOLR-1326 : New interface PluginInfoInitialized for all types of plugin (noble) |
---|
| 2543 | |
---|
| 2544 | 79. SOLR-1447 : Simple property injection. <mergePolicy> & <mergeScheduler> syntaxes are now deprecated |
---|
| 2545 | (Jason Rutherglen, noble) |
---|
| 2546 | |
---|
| 2547 | 80. SOLR-908 : CommonGramsFilterFactory/CommonGramsQueryFilterFactory for |
---|
| 2548 | speeding up phrase queries containing common words by indexing |
---|
| 2549 | n-grams and using them at query time. |
---|
| 2550 | (Tom Burton-West, Jason Rutherglen via yonik) |
---|
| 2551 | |
---|
| 2552 | 81. SOLR-1292: Add FieldCache introspection to stats.jsp and JMX Monitoring via |
---|
| 2553 | a new SolrFieldCacheMBean. (hossman) |
---|
| 2554 | |
---|
| 2555 | 82. SOLR-1167: Solr Config now supports XInclude for XML engines that can support it. (Bryan Talbot via gsingers) |
---|
| 2556 | |
---|
| 2557 | 83. SOLR-1478: Enable sort by Lucene docid. (ehatcher) |
---|
| 2558 | |
---|
| 2559 | 84. SOLR-1449: Add <lib> elements to solrconfig.xml to specifying additional |
---|
| 2560 | classpath directories and regular expressions. (hossman via yonik) |
---|
| 2561 | |
---|
| 2562 | |
---|
| 2563 | Optimizations |
---|
| 2564 | ---------------------- |
---|
| 2565 | 1. SOLR-374: Use IndexReader.reopen to save resources by re-using parts of the |
---|
| 2566 | index that haven't changed. (Mark Miller via yonik) |
---|
| 2567 | |
---|
| 2568 | 2. SOLR-808: Write string keys in Maps as extern strings in the javabin format. (Noble Paul via shalin) |
---|
| 2569 | |
---|
| 2570 | 3. SOLR-475: New faceting method with better performance and smaller memory usage for |
---|
| 2571 | multi-valued fields with many unique values but relatively few values per document. |
---|
| 2572 | Controllable via the facet.method parameter - "fc" is the new default method and "enum" |
---|
| 2573 | is the original method. (yonik) |
---|
| 2574 | |
---|
| 2575 | 4. SOLR-970: Use an ArrayList in SolrPluginUtils.parseQueryStrings |
---|
| 2576 | since we know exactly how long the List will be in advance. |
---|
| 2577 | (Kay Kay via hossman) |
---|
| 2578 | |
---|
| 2579 | 5. SOLR-1002: Change SolrIndexSearcher to use insertWithOverflow |
---|
| 2580 | with reusable priority queue entries to reduce the amount of |
---|
| 2581 | generated garbage during searching. (Mark Miller via yonik) |
---|
| 2582 | |
---|
| 2583 | 6. SOLR-971: Replace StringBuffer with StringBuilder for instances that do not require thread-safety. |
---|
| 2584 | (Kay Kay via shalin) |
---|
| 2585 | |
---|
| 2586 | 7. SOLR-921: SolrResourceLoader must cache short class name vs fully qualified classname |
---|
| 2587 | (Noble Paul, hossman via shalin) |
---|
| 2588 | |
---|
| 2589 | 8. SOLR-973: CommonsHttpSolrServer writes the xml directly to the server. |
---|
| 2590 | (Noble Paul via shalin) |
---|
| 2591 | |
---|
| 2592 | 9. SOLR-1108: Remove un-needed synchronization in SolrCore constructor. |
---|
| 2593 | (Noble Paul via shalin) |
---|
| 2594 | |
---|
| 2595 | 10. SOLR-1166: Speed up docset/filter generation by avoiding top-level |
---|
| 2596 | score() call and iterating over leaf readers with TermDocs. (yonik) |
---|
| 2597 | |
---|
| 2598 | 11. SOLR-1169: SortedIntDocSet - a new small set implementation |
---|
| 2599 | that saves memory over HashDocSet, is faster to construct, |
---|
| 2600 | is ordered for easier implementation of skipTo, and is faster |
---|
| 2601 | in the general case. (yonik) |
---|
| 2602 | |
---|
| 2603 | 12. SOLR-1165: Use Lucene Filters and pass them down to the Lucene |
---|
| 2604 | search methods to filter earlier and improve performance. (yonik) |
---|
| 2605 | |
---|
| 2606 | 13. SOLR-1111: Use per-segment sorting to share fieldcache elements |
---|
| 2607 | across unchanged segments. This saves memory and reduces |
---|
| 2608 | commit times for incremental updates to the index. (yonik) |
---|
| 2609 | |
---|
| 2610 | 14. SOLR-1188: Minor efficiency improvement in TermVectorComponent related to ignoring positions or offsets (gsingers) |
---|
| 2611 | |
---|
| 2612 | 15. SOLR-1150: Load Documents for Highlighting one at a time rather than |
---|
| 2613 | all at once to avoid OOM with many large Documents. (Siddharth Gargate via Mark Miller) |
---|
| 2614 | |
---|
| 2615 | 16. SOLR-1353: Implement and use reusable token streams for analysis. (Robert Muir, yonik) |
---|
| 2616 | |
---|
| 2617 | 17. SOLR-1296: Enables setting IndexReader's termInfosIndexDivisor via a new attribute to StandardIndexReaderFactory. Enables |
---|
| 2618 | setting termIndexInterval to IndexWriter via SolrIndexConfig. (Jason Rutherglen, hossman, gsingers) |
---|
| 2619 | |
---|
| 2620 | Bug Fixes |
---|
| 2621 | ---------------------- |
---|
| 2622 | 1. SOLR-774: Fixed logging level display (Sean Timm via Otis Gospodnetic) |
---|
| 2623 | |
---|
| 2624 | 2. SOLR-771: CoreAdminHandler STATUS should display 'normalized' paths (koji, hossman, shalin) |
---|
| 2625 | |
---|
| 2626 | 3. SOLR-532: WordDelimiterFilter now respects payloads and other attributes of the original Token by |
---|
| 2627 | using Token.clone() (Tricia Williams, gsingers) |
---|
| 2628 | |
---|
| 2629 | 4. SOLR-805: DisMax queries are not being cached in QueryResultCache (Todd Feak via koji) |
---|
| 2630 | |
---|
| 2631 | 5. SOLR-751: WordDelimiterFilter didn't adjust the start offset of single |
---|
| 2632 | tokens that started with delimiters, leading to incorrect highlighting. |
---|
| 2633 | (Stefan Oestreicher via yonik) |
---|
| 2634 | |
---|
| 2635 | 7. SOLR-843: SynonymFilterFactory cannot handle multiple synonym files correctly (koji) |
---|
| 2636 | |
---|
| 2637 | 8. SOLR-840: BinaryResponseWriter does not handle incompatible data in fields (Noble Paul via shalin) |
---|
| 2638 | |
---|
| 2639 | 9. SOLR-803: CoreAdminRequest.createCore fails because name parameter isn't set (Sean Colombo via ryan) |
---|
| 2640 | |
---|
| 2641 | 10. SOLR-869: Fix file descriptor leak in SolrResourceLoader#getLines (Mark Miller, shalin) |
---|
| 2642 | |
---|
| 2643 | 11. SOLR-872: Better error message for incorrect copyField destination (Noble Paul via shalin) |
---|
| 2644 | |
---|
| 2645 | 12. SOLR-879: Enable position increments in the query parser and fix the |
---|
| 2646 | example schema to enable position increments for the stop filter in |
---|
| 2647 | both the index and query analyzers to fix the bug with phrase queries |
---|
| 2648 | with stopwords. (yonik) |
---|
| 2649 | |
---|
| 2650 | 13. SOLR-836: Add missing "a" to the example stopwords.txt (yonik) |
---|
| 2651 | |
---|
| 2652 | 14. SOLR-892: Fix serialization of booleans for PHPSerializedResponseWriter |
---|
| 2653 | (yonik) |
---|
| 2654 | |
---|
| 2655 | 15. SOLR-898: Fix null pointer exception for the JSON response writer |
---|
| 2656 | based formats when nl.json=arrarr with null keys. (yonik) |
---|
| 2657 | |
---|
| 2658 | 16. SOLR-901: FastOutputStream ignores write(byte[]) call. (Noble Paul via shalin) |
---|
| 2659 | |
---|
| 2660 | 17. SOLR-807: BinaryResponseWriter writes fieldType.toExternal if it is not a supported type, |
---|
| 2661 | otherwise it writes fieldType.toObject. This fixes the bug with encoding/decoding UUIDField. |
---|
| 2662 | (koji, Noble Paul, shalin) |
---|
| 2663 | |
---|
| 2664 | 18. SOLR-863: SolrCore.initIndex should close the directory it gets for clearing the lock and |
---|
| 2665 | use the DirectoryFactory. (Mark Miller via shalin) |
---|
| 2666 | |
---|
| 2667 | 19. SOLR-802: Fix a potential null pointer error in the distributed FacetComponent |
---|
| 2668 | (David Bowen via ryan) |
---|
| 2669 | |
---|
| 2670 | 20. SOLR-346: Use perl regex to improve accuracy of finding latest snapshot in snapinstaller (billa) |
---|
| 2671 | |
---|
| 2672 | 21. SOLR-830: Use perl regex to improve accuracy of finding latest snapshot in snappuller (billa) |
---|
| 2673 | |
---|
| 2674 | 22. SOLR-897: Fixed Argument list too long error when there are lots of snapshots/backups (Dan Rosher via billa) |
---|
| 2675 | |
---|
| 2676 | 23. SOLR-925: Fixed highlighting on fields with multiValued="true" and termOffsets="true" (koji) |
---|
| 2677 | |
---|
| 2678 | 24. SOLR-902: FastInputStream#read(byte b[], int off, int len) gives incorrect results when amount left to read is less |
---|
| 2679 | than buffer size (Noble Paul via shalin) |
---|
| 2680 | |
---|
| 2681 | 25. SOLR-978: Old files are not removed from slaves after replication (Jaco, Noble Paul, shalin) |
---|
| 2682 | |
---|
| 2683 | 26. SOLR-883: Implicit properties are not set for Cores created through CoreAdmin (Noble Paul via shalin) |
---|
| 2684 | |
---|
| 2685 | 27. SOLR-991: Better error message when parsing solrconfig.xml fails due to malformed XML. Error message notes the name |
---|
| 2686 | of the file being parsed. (Michael Henson via shalin) |
---|
| 2687 | |
---|
| 2688 | 28. SOLR-1008: Fix stats.jsp XML encoding for <stat> item entries with ampersands in their names. (ehatcher) |
---|
| 2689 | |
---|
| 2690 | 29. SOLR-976: deleteByQuery is ignored when deleteById is placed prior to deleteByQuery in a <delete>. |
---|
| 2691 | Now both delete by id and delete by query can be specified at the same time as follows. (koji) |
---|
| 2692 | <delete> |
---|
| 2693 | <id>05991</id><id>06000</id> |
---|
| 2694 | <query>office:Bridgewater</query><query>office:Osaka</query> |
---|
| 2695 | </delete> |
---|
| 2696 | |
---|
| 2697 | 30. SOLR-1016: HTTP 503 error changes 500 in SolrCore (koji) |
---|
| 2698 | |
---|
| 2699 | 31. SOLR-1015: Incomplete information in replication admin page and http command response when server |
---|
| 2700 | is both master and slave i.e. when server is a repeater (Akshay Ukey via shalin) |
---|
| 2701 | |
---|
| 2702 | 32. SOLR-1018: Slave is unable to replicate when server acts as repeater (as both master and slave) |
---|
| 2703 | (Akshay Ukey, Noble Paul via shalin) |
---|
| 2704 | |
---|
| 2705 | 33. SOLR-1031: Fix XSS vulnerability in schema.jsp (Paul Lovvik via ehatcher) |
---|
| 2706 | |
---|
| 2707 | 34. SOLR-1064: registry.jsp incorrectly displaying info for last core initialized |
---|
| 2708 | regardless of what the current core is. (hossman) |
---|
| 2709 | |
---|
| 2710 | 35. SOLR-1072: absolute paths used in sharedLib attribute were |
---|
| 2711 | incorrectly treated as relative paths. (hossman) |
---|
| 2712 | |
---|
| 2713 | 36. SOLR-1104: Fix some rounding errors in LukeRequestHandler's histogram (hossman) |
---|
| 2714 | |
---|
| 2715 | 37. SOLR-1125: Use query analyzer rather than index analyzer for queryFieldType in QueryElevationComponent |
---|
| 2716 | (koji) |
---|
| 2717 | |
---|
| 2718 | 38. SOLR-1126: Replicated files have incorrect timestamp (Jian Han Guo, Jeff Newburn, Noble Paul via shalin) |
---|
| 2719 | |
---|
| 2720 | 39. SOLR-1094: Incorrect value of correctlySpelled attribute in some cases (David Smiley, Mark Miller via shalin) |
---|
| 2721 | |
---|
| 2722 | 40. SOLR-965: Better error message when <pingQuery> is not configured. |
---|
| 2723 | (Mark Miller via hossman) |
---|
| 2724 | |
---|
| 2725 | 41. SOLR-1135: Java replication creates Snapshot in the directory where Solr was launched (Jianhan Guo via shalin) |
---|
| 2726 | |
---|
| 2727 | 42. SOLR-1138: Query Elevation Component now gracefully handles missing queries. (gsingers) |
---|
| 2728 | |
---|
| 2729 | 43. SOLR-929: LukeRequestHandler should return "dynamicBase" only if the field is dynamic. |
---|
| 2730 | (Peter Wolanin, koji) |
---|
| 2731 | |
---|
| 2732 | 44. SOLR-1141: NullPointerException during snapshoot command in java based replication (Jian Han Guo, shalin) |
---|
| 2733 | |
---|
| 2734 | 45. SOLR-1078: Fixes to WordDelimiterFilter to avoid splitting or dropping |
---|
| 2735 | international non-letter characters such as non spacing marks. (yonik) |
---|
| 2736 | |
---|
| 2737 | 46. SOLR-825, SOLR-1221: Enables highlighting for range/wildcard/fuzzy/prefix queries if using hl.usePhraseHighlighter=true |
---|
| 2738 | and hl.highlightMultiTerm=true. Also make both options default to true. (Mark Miller, yonik) |
---|
| 2739 | |
---|
| 2740 | 47. SOLR-1174: Fix Logging admin form submit url for multicore. (Jacob Singh via shalin) |
---|
| 2741 | |
---|
| 2742 | 48. SOLR-1182: Fix bug in OrdFieldSource#equals which could cause a bug with OrdFieldSource caching |
---|
| 2743 | on OrdFieldSource#hashcode collisions. (Mark Miller) |
---|
| 2744 | |
---|
| 2745 | 49. SOLR-1207: equals method should compare this and other of DocList in DocSetBase (koji) |
---|
| 2746 | |
---|
| 2747 | 50. SOLR-1242: Human readable JVM info from system handler does integer cutoff rounding, even when dealing |
---|
| 2748 | with GB. Fixed to round to one decimal place. (Jay Hill, Mark Miller) |
---|
| 2749 | |
---|
| 2750 | 51. SOLR-1243: Admin RequestHandlers should not be cached over HTTP. (Mark Miller) |
---|
| 2751 | |
---|
| 2752 | 52. SOLR-1260: Fix implementations of set operations for DocList subclasses |
---|
| 2753 | and fix a bug in HashDocSet construction when offset != 0. These bugs |
---|
| 2754 | never manifested in normal Solr use and only potentially affect |
---|
| 2755 | custom code. (yonik) |
---|
| 2756 | |
---|
| 2757 | 53. SOLR-1171: Fix LukeRequestHandler so it doesn't rely on SolrQueryParser |
---|
| 2758 | and report incorrect stats when field names contain characters |
---|
| 2759 | SolrQueryParser considers special. |
---|
| 2760 | (hossman) |
---|
| 2761 | |
---|
| 2762 | 54. SOLR-1317: Fix CapitalizationFilterFactory to work when keep parameter is not specified. |
---|
| 2763 | (ehatcher) |
---|
| 2764 | |
---|
| 2765 | 55. SOLR-1342: CapitalizationFilterFactory uses incorrect term length calculations. |
---|
| 2766 | (Robert Muir via Mark Miller) |
---|
| 2767 | |
---|
| 2768 | 56. SOLR-1359: DoubleMetaphoneFilter didn't index original tokens if there was no |
---|
| 2769 | alternative, and could incorrectly skip or reorder tokens. (yonik) |
---|
| 2770 | |
---|
| 2771 | 57. SOLR-1360: Prevent PhoneticFilter from producing duplicate tokens. (yonik) |
---|
| 2772 | |
---|
| 2773 | 58. SOLR-1371: LukeRequestHandler/schema.jsp errored if schema had no |
---|
| 2774 | uniqueKey field. The new test for this also (hopefully) adds some |
---|
| 2775 | future proofing against similar bugs in the future. As a side |
---|
| 2776 | effect QueryElevationComponentTest was refactored, and a bug in |
---|
| 2777 | that test was found. (hossman) |
---|
| 2778 | |
---|
| 2779 | 59. SOLR-914: General finalize() improvements. No finalizer delegates |
---|
| 2780 | to the respective close/destroy method w/o first checking if it's |
---|
| 2781 | already been closed/destroyed; if it hasn't a, SEVERE error is |
---|
| 2782 | logged first. (noble, hossman) |
---|
| 2783 | |
---|
| 2784 | 60. SOLR-1362: WordDelimiterFilter had inconsistent behavior when setting |
---|
| 2785 | the position increment of tokens following a token consisting of all |
---|
| 2786 | delimiters, and could additionally lose big position increments. |
---|
| 2787 | (Robert Muir, yonik) |
---|
| 2788 | |
---|
| 2789 | 61. SOLR-1091: Jetty's use of CESU-8 for code points outside the BMP |
---|
| 2790 | resulted in invalid output from the serialized PHP writer. (yonik) |
---|
| 2791 | |
---|
| 2792 | 62. SOLR-1103: LukeRequestHandler (and schema.jsp) have been fixed to |
---|
| 2793 | include the "1" (ie: 2**0) bucket in the term histogram data. |
---|
| 2794 | (hossman) |
---|
| 2795 | |
---|
| 2796 | 63. SOLR-1398: Add offset corrections in PatternTokenizerFactory. |
---|
| 2797 | (Anders Melchiorsen, koji) |
---|
| 2798 | |
---|
| 2799 | 64. SOLR-1400: Properly handle zero-length tokens in TrimFilter. This |
---|
| 2800 | was not a bug in any released version. (Peter Wolanin, gsingers) |
---|
| 2801 | |
---|
| 2802 | 65. SOLR-1071: spellcheck.extendedResults returns an invalid JSON response |
---|
| 2803 | when count > 1. To fix, the extendedResults format was changed. |
---|
| 2804 | (Uri Boness, yonik) |
---|
| 2805 | |
---|
| 2806 | 66. SOLR-1381: Fixed improper handling of fields that have only term positions and not term offsets during Highlighting (Thorsten Fischer, gsingers) |
---|
| 2807 | |
---|
| 2808 | 67. SOLR-1427: Fixed registry.jsp issue with MBeans (gsingers) |
---|
| 2809 | |
---|
| 2810 | 68. SOLR-1468: SolrJ's XML response parsing threw an exception for null |
---|
| 2811 | names, such as those produced when facet.missing=true (yonik) |
---|
| 2812 | |
---|
| 2813 | 69. SOLR-1471: Fixed issue with calculating missing values for facets in single valued cases in Stats Component. |
---|
| 2814 | This is not correctly calculated for the multivalued case. (James Miller, gsingers) |
---|
| 2815 | |
---|
| 2816 | 70. SOLR-1481: Fixed omitHeader parameter for PHP ResponseWriter. (Jun Ohtani via billa) |
---|
| 2817 | |
---|
| 2818 | 71. SOLR-1448: Add weblogic.xml to solr webapp to enable correct operation in |
---|
| 2819 | WebLogic. (Ilan Rabinovitch via yonik) |
---|
| 2820 | |
---|
| 2821 | 72. SOLR-1504: empty char mapping can cause ArrayIndexOutOfBoundsException in analysis.jsp and co. |
---|
| 2822 | (koji) |
---|
| 2823 | |
---|
| 2824 | 73. SOLR-1394: HTMLStripCharFilter split tokens that contained entities and |
---|
| 2825 | often calculated offsets incorrectly for entities. |
---|
| 2826 | (Anders Melchiorsen via yonik) |
---|
| 2827 | |
---|
| 2828 | 74. SOLR-1517: Admin pages could stall waiting for localhost name resolution |
---|
| 2829 | if reverse DNS wasn't configured; this was changed so the DNS resolution |
---|
| 2830 | is attempted only once the first time an admin page is loaded. |
---|
| 2831 | (hossman) |
---|
| 2832 | |
---|
| 2833 | 75. SOLR-1529: More than 8 deleteByQuery commands in a single request |
---|
| 2834 | caused an error to be returned, although the deletes were |
---|
| 2835 | still executed. (asmodean via yonik) |
---|
| 2836 | |
---|
| 2837 | Other Changes |
---|
| 2838 | ---------------------- |
---|
| 2839 | 1. Upgraded to Lucene 2.4.0 (yonik) |
---|
| 2840 | |
---|
| 2841 | 2. SOLR-805: Upgraded to Lucene 2.9-dev (r707499) (koji) |
---|
| 2842 | |
---|
| 2843 | 3. DumpRequestHandler (/debug/dump): changed 'fieldName' to 'sourceInfo'. (ehatcher) |
---|
| 2844 | |
---|
| 2845 | 4. SOLR-852: Refactored common code in CSVRequestHandler and XMLUpdateRequestHandler (gsingers, ehatcher) |
---|
| 2846 | |
---|
| 2847 | 5. SOLR-871: Removed dependency on stax-utils.jar. If you using solr.jar and running |
---|
| 2848 | java 6, you can also remove woodstox and geronimo. (ryan) |
---|
| 2849 | |
---|
| 2850 | 6. SOLR-465: Upgraded to Lucene 2.9-dev (r719351) (shalin) |
---|
| 2851 | |
---|
| 2852 | 7. SOLR-889: Upgraded to commons-io-1.4.jar and commons-fileupload-1.2.1.jar (ryan) |
---|
| 2853 | |
---|
| 2854 | 8. SOLR-875: Upgraded to Lucene 2.9-dev (r723985) and consolidated the BitSet implementations (Michael Busch, gsingers) |
---|
| 2855 | |
---|
| 2856 | 9. SOLR-819: Upgraded to Lucene 2.9-dev (r724059) to get access to Arabic public constructors (gsingers) |
---|
| 2857 | and |
---|
| 2858 | 10. SOLR-900: Moved solrj into /src/solrj. The contents of solr-common.jar is now included |
---|
| 2859 | in the solr-solrj.jar. (ryan) |
---|
| 2860 | |
---|
| 2861 | 11. SOLR-924: Code cleanup: make all existing finalize() methods call |
---|
| 2862 | super.finalize() in a finally block. All current instances extend |
---|
| 2863 | Object, so this doesn't fix any bugs, but helps protect against |
---|
| 2864 | future changes. (Kay Kay via hossman) |
---|
| 2865 | |
---|
| 2866 | 12. SOLR-885: NamedListCodec is renamed to JavaBinCodec and returns Object instead of NamedList. |
---|
| 2867 | (Noble Paul, yonik via shalin) |
---|
| 2868 | |
---|
| 2869 | 13. SOLR-84: Use new Solr logo in admin (Michiel via koji) |
---|
| 2870 | |
---|
| 2871 | 14. SOLR-981: groupId for Woodstox dependency in maven solrj changed to org.codehaus.woodstox (Tim Taranov via shalin) |
---|
| 2872 | |
---|
| 2873 | 15. Upgraded to Lucene 2.9-dev r738218 (yonik) |
---|
| 2874 | |
---|
| 2875 | 16. SOLR-959: Refactored TestReplicationHandler to remove hardcoded port numbers (hossman, Akshay Ukey via shalin) |
---|
| 2876 | |
---|
| 2877 | 17. Upgraded to Lucene 2.9-dev r742220 (yonik) |
---|
| 2878 | |
---|
| 2879 | 18. SOLR-1022: Better "ignored" field in example schema.xml (Peter Wolanin via hossman) |
---|
| 2880 | |
---|
| 2881 | 19. SOLR-967: New type-safe constructor for NamedList (Kay Kay via hossman) |
---|
| 2882 | |
---|
| 2883 | 20. SOLR-1036: Change default QParser from "lucenePlusSort" to "lucene" to |
---|
| 2884 | reduce confusion of semicolon splitting behavior when no sort param is |
---|
| 2885 | specified (hossman) |
---|
| 2886 | |
---|
| 2887 | 21. Upgraded to Lucene 2.9-dev r752164 (shalin) |
---|
| 2888 | |
---|
| 2889 | 22. SOLR-1068: Use fsync on replicated index and configuration files (yonik, Noble Paul, shalin) |
---|
| 2890 | |
---|
| 2891 | 23. SOLR-952: Cleanup duplicated code in deprecated HighlightingUtils (hossman) |
---|
| 2892 | |
---|
| 2893 | 24. Upgraded to Lucene 2.9-dev r764281 (shalin) |
---|
| 2894 | |
---|
| 2895 | 25. SOLR-1079: Rename omitTf to omitTermFreqAndPositions (shalin) |
---|
| 2896 | |
---|
| 2897 | 26. SOLR-804: Added Lucene's misc contrib JAR (rev 764281). (gsingers) |
---|
| 2898 | |
---|
| 2899 | 27. Upgraded to Lucene 2.9-dev r768228 (shalin) |
---|
| 2900 | |
---|
| 2901 | 28. Upgraded to Lucene 2.9-dev r768336 (shalin) |
---|
| 2902 | |
---|
| 2903 | 29. SOLR-997: Wait for a longer time for slave to complete replication in TestReplicationHandler |
---|
| 2904 | (Mark Miller via shalin) |
---|
| 2905 | |
---|
| 2906 | 30. SOLR-748: FacetComponent helper classes are made public as an experimental API. |
---|
| 2907 | (Wojtek Piaseczny via shalin) |
---|
| 2908 | |
---|
| 2909 | 31. Upgraded to Lucene 2.9-dev 773862 (Mark Miller) |
---|
| 2910 | |
---|
| 2911 | 32. Upgraded to Lucene 2.9-dev r776177 (shalin) |
---|
| 2912 | |
---|
| 2913 | 33. SOLR-1149: Made QParserPlugin and related classes extendible as an experimental API. |
---|
| 2914 | (Kaktu Chakarabati via shalin) |
---|
| 2915 | |
---|
| 2916 | 34. Upgraded to Lucene 2.9-dev r779312 (yonik) |
---|
| 2917 | |
---|
| 2918 | 35. SOLR-786: Refactor DisMaxQParser to allow overriding certain features of DisMaxQParser |
---|
| 2919 | (Wojciech Biela via shalin) |
---|
| 2920 | |
---|
| 2921 | 36. SOLR-458: Add equals and hashCode methods to NamedList (Stefan Rinner, shalin) |
---|
| 2922 | |
---|
| 2923 | 37. SOLR-1184: Add option in solrconfig to open a new IndexReader rather than |
---|
| 2924 | using reopen. Done mainly as a fail-safe in the case that a user runs into |
---|
| 2925 | a reopen bug/issue. (Mark Miller) |
---|
| 2926 | |
---|
| 2927 | 38. SOLR-1215 use double quotes to enclose attributes in solr.xml (noble) |
---|
| 2928 | |
---|
| 2929 | 39. SOLR-1151: add dynamic copy field and maxChars example to example schema.xml. |
---|
| 2930 | (Peter Wolanin, Mark Miller) |
---|
| 2931 | |
---|
| 2932 | 40. SOLR-1233: remove /select?qt=/whatever restriction on /-prefixed request handlers. |
---|
| 2933 | (ehatcher) |
---|
| 2934 | |
---|
| 2935 | 41. SOLR-1257: logging.jsp has been removed and now passes through to the |
---|
| 2936 | hierarchical log level tool added in Solr 1.3. Users still |
---|
| 2937 | hitting "/admin/logging.jsp" should switch to "/admin/logging". |
---|
| 2938 | (hossman) |
---|
| 2939 | |
---|
| 2940 | 42. Upgraded to Lucene 2.9-dev r794238. Other changes include: |
---|
| 2941 | LUCENE-1614 - Use Lucene's DocIdSetIterator.NO_MORE_DOCS as the sentinel value. |
---|
| 2942 | LUCENE-1630 - Add acceptsDocsOutOfOrder method to Collector implementations. |
---|
| 2943 | LUCENE-1673, LUCENE-1701 - Trie has moved to Lucene core and renamed to NumericRangeQuery. |
---|
| 2944 | LUCENE-1662, LUCENE-1687 - Replace usage of ExtendedFieldCache by FieldCache. |
---|
| 2945 | (shalin) |
---|
| 2946 | |
---|
| 2947 | 42. SOLR-1241: Solr's CharFilter has been moved to Lucene. Remove CharFilter and related classes |
---|
| 2948 | from Solr and use Lucene's corresponding code (koji via shalin) |
---|
| 2949 | |
---|
| 2950 | 43. SOLR-1261: Lucene trunk renamed RangeQuery & Co to TermRangeQuery (Uwe Schindler via shalin) |
---|
| 2951 | |
---|
| 2952 | 44. Upgraded to Lucene 2.9-dev r801856 (Mark Miller) |
---|
| 2953 | |
---|
| 2954 | 45. SOLR1276: Added StatsComponentTest (RafaᅵŠKuï¿œÄ, gsingers) |
---|
| 2955 | |
---|
| 2956 | 46. SOLR-1377: The TokenizerFactory API has changed to explicitly return a Tokenizer |
---|
| 2957 | rather then a TokenStream (that may be or may not be a Tokenizer). This change |
---|
| 2958 | is required to take advantage of the Token reuse improvements in lucene 2.9. (ryan) |
---|
| 2959 | |
---|
| 2960 | 47. SOLR-1410: Log a warning if the deprecated charset option is used |
---|
| 2961 | on GreekLowerCaseFilterFactory, RussianStemFilterFactory, |
---|
| 2962 | RussianLowerCaseFilterFactory or RussianLetterTokenizerFactory. |
---|
| 2963 | (Robert Muir via hossman) |
---|
| 2964 | |
---|
| 2965 | 48. SOLR-1423: Due to LUCENE-1906, Solr's tokenizer should use Tokenizer.correctOffset() instead of CharStream.correctOffset(). |
---|
| 2966 | (Uwe Schindler via koji) |
---|
| 2967 | |
---|
| 2968 | 49. SOLR-1319, SOLR-1345: Upgrade Solr Highlighter classes to new Lucene Highlighter API. This upgrade has |
---|
| 2969 | resulted in a back compat break in the DefaultSolrHighlighter class - getQueryScorer is no longer |
---|
| 2970 | protected. If you happened to be overriding that method in custom code, overide getHighlighter instead. |
---|
| 2971 | Also, HighlightingUtils#getQueryScorer has been removed as it was deprecated and backcompat has been |
---|
| 2972 | broken with it anyway. (Mark Miller) |
---|
| 2973 | |
---|
| 2974 | 50. SOLR-1357 SolrInputDocument cannot process dynamic fields (Lars Grote via noble) |
---|
| 2975 | |
---|
| 2976 | Build |
---|
| 2977 | ---------------------- |
---|
| 2978 | 1. SOLR-776: Added in ability to sign artifacts via Ant for releases (gsingers) |
---|
| 2979 | |
---|
| 2980 | 2. SOLR-854: Added run-example target (Mark Miller via ehatcher) |
---|
| 2981 | |
---|
| 2982 | 3. SOLR-1054:Fix dist-src target for DataImportHandler (Ryuuichi Kumai via shalin) |
---|
| 2983 | |
---|
| 2984 | 4. SOLR-1219: Added proxy.setup target (koji) |
---|
| 2985 | |
---|
| 2986 | 5. SOLR-1386: In build.xml, use longfile="gnu" in tar task to avoid warnings about long file names |
---|
| 2987 | (Mark Miller via shalin) |
---|
| 2988 | |
---|
| 2989 | 6. SOLR-1441: Make it possible to run all tests in a package (shalin) |
---|
| 2990 | |
---|
| 2991 | |
---|
| 2992 | Documentation |
---|
| 2993 | ---------------------- |
---|
| 2994 | 1. SOLR-789: The javadoc of RandomSortField is not readable (Nicolas Lalevï¿œÃï¿œe via koji) |
---|
| 2995 | |
---|
| 2996 | 2. SOLR-962: Note about null handling in ModifiableSolrParams.add javadoc |
---|
| 2997 | (Kay Kay via hossman) |
---|
| 2998 | |
---|
| 2999 | 3. SOLR-1409: Added Solr Powered By Logos |
---|
| 3000 | |
---|
| 3001 | ================== Release 1.3.0 ================== |
---|
| 3002 | |
---|
| 3003 | Upgrading from Solr 1.2 |
---|
| 3004 | ----------------------- |
---|
| 3005 | IMPORTANT UPGRADE NOTE: In a master/slave configuration, all searchers/slaves |
---|
| 3006 | should be upgraded before the master! If the master were to be updated |
---|
| 3007 | first, the older searchers would not be able to read the new index format. |
---|
| 3008 | |
---|
| 3009 | The Porter snowball based stemmers in Lucene were updated (LUCENE-1142), |
---|
| 3010 | and are not guaranteed to be backward compatible at the index level |
---|
| 3011 | (the stem of certain words may have changed). Re-indexing is recommended. |
---|
| 3012 | |
---|
| 3013 | Older Apache Solr installations can be upgraded by replacing |
---|
| 3014 | the relevant war file with the new version. No changes to configuration |
---|
| 3015 | files should be needed. |
---|
| 3016 | |
---|
| 3017 | This version of Solr contains a new version of Lucene implementing |
---|
| 3018 | an updated index format. This version of Solr/Lucene can still read |
---|
| 3019 | and update indexes in the older formats, and will convert them to the new |
---|
| 3020 | format on the first index change. Be sure to backup your index before |
---|
| 3021 | upgrading in case you need to downgrade. |
---|
| 3022 | |
---|
| 3023 | Solr now recognizes HTTP Request headers related to HTTP Caching (see |
---|
| 3024 | RFC 2616 sec13) and will by default respond with "304 Not Modified" |
---|
| 3025 | when appropriate. This should only affect users who access Solr via |
---|
| 3026 | an HTTP Cache, or via a Web-browser that has an internal cache, but if |
---|
| 3027 | you wish to suppress this behavior an '<httpCaching never304="true"/>' |
---|
| 3028 | option can be added to your solrconfig.xml. See the wiki (or the |
---|
| 3029 | example solrconfig.xml) for more details... |
---|
| 3030 | http://wiki.apache.org/solr/SolrConfigXml#HTTPCaching |
---|
| 3031 | |
---|
| 3032 | In Solr 1.2, DateField did not enforce the canonical representation of |
---|
| 3033 | the ISO 8601 format when parsing incoming data, and did not generation |
---|
| 3034 | the canonical format when generating dates from "Date Math" strings |
---|
| 3035 | (particularly as it pertains to milliseconds ending in trailing zeros) |
---|
| 3036 | -- As a result equivalent dates could not always be compared properly. |
---|
| 3037 | This problem is corrected in Solr 1.3, but DateField users that might |
---|
| 3038 | have been affected by indexing inconsistent formats of equivilent |
---|
| 3039 | dates (ie: 1995-12-31T23:59:59Z vs 1995-12-31T23:59:59.000Z) may want |
---|
| 3040 | to consider reindexing to correct these inconsistencies. Users who |
---|
| 3041 | depend on some of the the "broken" behavior of DateField in Solr 1.2 |
---|
| 3042 | (specificly: accepting any input that ends in a 'Z') should consider |
---|
| 3043 | using the LegacyDateField class as a possible alternative. Users that |
---|
| 3044 | desire 100% backwards compatibility should consider using the Solr 1.2 |
---|
| 3045 | version of DateField. |
---|
| 3046 | |
---|
| 3047 | Due to some changes in the lifecycle of TokenFilterFactories, users of |
---|
| 3048 | Solr 1.2 who have written Java code which constructs new instances of |
---|
| 3049 | StopFilterFactory, SynonymFilterFactory, or EnglishProterFilterFactory |
---|
| 3050 | will need to modify their code by adding a line like the following |
---|
| 3051 | prior to using the factory object... |
---|
| 3052 | factory.inform(SolrCore.getSolrCore().getSolrConfig().getResourceLoader()); |
---|
| 3053 | These lifecycle changes do not affect people who use Solr "out of the |
---|
| 3054 | box" or who have developed their own TokenFilterFactory plugins. More |
---|
| 3055 | info can be found in SOLR-594. |
---|
| 3056 | |
---|
| 3057 | The python client that used to ship with Solr is no longer included in |
---|
| 3058 | the distribution (see client/python/README.txt). |
---|
| 3059 | |
---|
| 3060 | Detailed Change List |
---|
| 3061 | -------------------- |
---|
| 3062 | |
---|
| 3063 | New Features |
---|
| 3064 | 1. SOLR-69: Adding MoreLikeThisHandler to search for similar documents using |
---|
| 3065 | lucene contrib/queries MoreLikeThis. MoreLikeThis is also available from |
---|
| 3066 | the StandardRequestHandler using ?mlt=true. (bdelacretaz, ryan) |
---|
| 3067 | |
---|
| 3068 | 2. SOLR-253: Adding KeepWordFilter and KeepWordFilterFactory. A TokenFilter |
---|
| 3069 | that keeps tokens with text in the registered keeplist. This behaves like |
---|
| 3070 | the inverse of StopFilter. (ryan) |
---|
| 3071 | |
---|
| 3072 | 3. SOLR-257: WordDelimiterFilter has a new parameter splitOnCaseChange, |
---|
| 3073 | which can be set to 0 to disable splitting "PowerShot" => "Power" "Shot". |
---|
| 3074 | (klaas) |
---|
| 3075 | |
---|
| 3076 | 4. SOLR-193: Adding SolrDocument and SolrInputDocument to represent documents |
---|
| 3077 | outside of the lucene Document infrastructure. This class will be used |
---|
| 3078 | by clients and for processing documents. (ryan) |
---|
| 3079 | |
---|
| 3080 | 5. SOLR-244: Added ModifiableSolrParams - a SolrParams implementation that |
---|
| 3081 | help you change values after initialization. (ryan) |
---|
| 3082 | |
---|
| 3083 | 6. SOLR-20: Added a java client interface with two implementations. One |
---|
| 3084 | implementation uses commons httpclient to connect to solr via HTTP. The |
---|
| 3085 | other connects to solr directly. Check client/java/solrj. This addition |
---|
| 3086 | also includes tests that start jetty and test a connection using the full |
---|
| 3087 | HTTP request cycle. (Darren Erik Vengroff, Will Johnson, ryan) |
---|
| 3088 | |
---|
| 3089 | 7. SOLR-133: Added StaxUpdateRequestHandler that uses StAX for XML parsing. |
---|
| 3090 | This implementation has much better error checking and lets you configure |
---|
| 3091 | a custom UpdateRequestProcessor that can selectively process update |
---|
| 3092 | requests depending on the request attributes. This class will likely |
---|
| 3093 | replace XmlUpdateRequestHandler. (Thorsten Scherler, ryan) |
---|
| 3094 | |
---|
| 3095 | 8. SOLR-264: Added RandomSortField, a utility field with a random sort order. |
---|
| 3096 | The seed is based on a hash of the field name, so a dynamic field |
---|
| 3097 | of this type is useful for generating different random sequences. |
---|
| 3098 | This field type should only be used for sorting or as a value source |
---|
| 3099 | in a FunctionQuery (ryan, hossman, yonik) |
---|
| 3100 | |
---|
| 3101 | 9. SOLR-266: Adding show=schema to LukeRequestHandler to show the parsed |
---|
| 3102 | schema fields and field types. (ryan) |
---|
| 3103 | |
---|
| 3104 | 10. SOLR-133: The UpdateRequestHandler now accepts multiple delete options |
---|
| 3105 | within a single request. For example, sending: |
---|
| 3106 | <delete><id>1</id><id>2</id></delete> will delete both 1 and 2. (ryan) |
---|
| 3107 | |
---|
| 3108 | 11. SOLR-269: Added UpdateRequestProcessor plugin framework. This provides |
---|
| 3109 | a reasonable place to process documents after they are parsed and |
---|
| 3110 | before they are committed to the index. This is a good place for custom |
---|
| 3111 | document manipulation or document based authorization. (yonik, ryan) |
---|
| 3112 | |
---|
| 3113 | 12. SOLR-260: Converting to a standard PluginLoader framework. This reworks |
---|
| 3114 | RequestHandlers, FieldTypes, and QueryResponseWriters to share the same |
---|
| 3115 | base code for loading and initializing plugins. This adds a new |
---|
| 3116 | configuration option to define the default RequestHandler and |
---|
| 3117 | QueryResponseWriter in XML using default="true". (ryan) |
---|
| 3118 | |
---|
| 3119 | 13. SOLR-225: Enable pluggable highlighting classes. Allow configurable |
---|
| 3120 | highlighting formatters and Fragmenters. (ryan) |
---|
| 3121 | |
---|
| 3122 | 14. SOLR-273/376/452/516: Added hl.maxAnalyzedChars highlighting parameter, defaulting |
---|
| 3123 | to 50k, hl.alternateField, which allows the specification of a backup |
---|
| 3124 | field to use as summary if no keywords are matched, and hl.mergeContiguous, |
---|
| 3125 | which combines fragments if they are adjacent in the source document. |
---|
| 3126 | (klaas, Grant Ingersoll, Koji Sekiguchi via klaas) |
---|
| 3127 | |
---|
| 3128 | 15. SOLR-291: Control maximum number of documents to cache for any entry |
---|
| 3129 | in the queryResultCache via queryResultMaxDocsCached solrconfig.xml |
---|
| 3130 | entry. (Koji Sekiguchi via yonik) |
---|
| 3131 | |
---|
| 3132 | 16. SOLR-240: New <lockType> configuration setting in <mainIndex> and |
---|
| 3133 | <indexDefaults> blocks supports all Lucene builtin LockFactories. |
---|
| 3134 | 'single' is recommended setting, but 'simple' is default for total |
---|
| 3135 | backwards compatibility. |
---|
| 3136 | (Will Johnson via hossman) |
---|
| 3137 | |
---|
| 3138 | 17. SOLR-248: Added CapitalizationFilterFactory that creates tokens with |
---|
| 3139 | normalized capitalization. This filter is useful for facet display, |
---|
| 3140 | but will not work with a prefix query. (ryan) |
---|
| 3141 | SOLR-468: Change to the semantics to keep the original token, not the |
---|
| 3142 | token in the Map. Also switched to use Lucene's new reusable token |
---|
| 3143 | capabilities. (gsingers) |
---|
| 3144 | |
---|
| 3145 | 18. SOLR-307: Added NGramFilterFactory and EdgeNGramFilterFactory. |
---|
| 3146 | (Thomas Peuss via Otis Gospodnetic) |
---|
| 3147 | |
---|
| 3148 | 19. SOLR-305: analysis.jsp can be given a fieldtype instead of a field |
---|
| 3149 | name. (hossman) |
---|
| 3150 | |
---|
| 3151 | 20. SOLR-102: Added RegexFragmenter, which splits text for highlighting |
---|
| 3152 | based on a given pattern. (klaas) |
---|
| 3153 | |
---|
| 3154 | 21. SOLR-258: Date Faceting added to SimpleFacets. Facet counts |
---|
| 3155 | computed for ranges of size facet.date.gap (a DateMath expression) |
---|
| 3156 | between facet.date.start and facet.date.end. (hossman) |
---|
| 3157 | |
---|
| 3158 | 22. SOLR-196: A PHP serialized "phps" response writer that returns a |
---|
| 3159 | serialized array that can be used with the PHP function unserialize, |
---|
| 3160 | and a PHP response writer "php" that may be used by eval. |
---|
| 3161 | (Nick Jenkin, Paul Borgermans, Pieter Berkel via yonik) |
---|
| 3162 | |
---|
| 3163 | 23. SOLR-308: A new UUIDField class which accepts UUID string values, |
---|
| 3164 | as well as the special value of "NEW" which triggers generation of |
---|
| 3165 | a new random UUID. |
---|
| 3166 | (Thomas Peuss via hossman) |
---|
| 3167 | |
---|
| 3168 | 24. SOLR-349: New FunctionQuery functions: sum, product, div, pow, log, |
---|
| 3169 | sqrt, abs, scale, map. Constants may now be used as a value source. |
---|
| 3170 | (yonik) |
---|
| 3171 | |
---|
| 3172 | 25. SOLR-359: Add field type className to Luke response, and enabled access |
---|
| 3173 | to the detailed field information from the solrj client API. |
---|
| 3174 | (Grant Ingersoll via ehatcher) |
---|
| 3175 | |
---|
| 3176 | 26. SOLR-334: Pluggable query parsers. Allows specification of query |
---|
| 3177 | type and arguments as a prefix on a query string. (yonik) |
---|
| 3178 | |
---|
| 3179 | 27. SOLR-351: External Value Source. An external file may be used |
---|
| 3180 | to specify the values of a field, currently usable as |
---|
| 3181 | a ValueSource in a FunctionQuery. (yonik) |
---|
| 3182 | |
---|
| 3183 | 28. SOLR-395: Many new features for the spell checker implementation, including |
---|
| 3184 | an extended response mode with much richer output, multi-word spell checking, |
---|
| 3185 | and a bevy of new and renamed options (see the wiki). |
---|
| 3186 | (Mike Krimerman, Scott Taber via klaas). |
---|
| 3187 | |
---|
| 3188 | 29. SOLR-408: Added PingRequestHandler and deprecated SolrCore.getPingQueryRequest(). |
---|
| 3189 | Ping requests should be configured using standard RequestHandler syntax in |
---|
| 3190 | solrconfig.xml rather then using the <pingQuery></pingQuery> syntax. |
---|
| 3191 | (Karsten Sperling via ryan) |
---|
| 3192 | |
---|
| 3193 | 30. SOLR-281: Added a 'Search Component' interface and converted StandardRequestHandler |
---|
| 3194 | and DisMaxRequestHandler to use this framework. |
---|
| 3195 | (Sharad Agarwal, Henri Biestro, yonik, ryan) |
---|
| 3196 | |
---|
| 3197 | 31. SOLR-176: Add detailed timing data to query response output. The SearchHandler |
---|
| 3198 | interface now returns how long each section takes. (klaas) |
---|
| 3199 | |
---|
| 3200 | 32. SOLR-414: Plugin initialization now supports SolrCore and ResourceLoader "Aware" |
---|
| 3201 | plugins. Plugins that implement SolrCoreAware or ResourceLoaderAware are |
---|
| 3202 | informed about the SolrCore/ResourceLoader. (Henri Biestro, ryan) |
---|
| 3203 | |
---|
| 3204 | 33. SOLR-350: Support multiple SolrCores running in the same solr instance and allows |
---|
| 3205 | runtime runtime management for any running SolrCore. If a solr.xml file exists |
---|
| 3206 | in solr.home, this file is used to instanciate multiple cores and enables runtime |
---|
| 3207 | core manipulation. For more informaion see: http://wiki.apache.org/solr/CoreAdmin |
---|
| 3208 | (Henri Biestro, ryan) |
---|
| 3209 | |
---|
| 3210 | 34. SOLR-447: Added an single request handler that will automatically register all |
---|
| 3211 | standard admin request handlers. This replaces the need to register (and maintain) |
---|
| 3212 | the set of admin request handlers. Assuming solrconfig.xml includes: |
---|
| 3213 | <requestHandler name="/admin/" class="org.apache.solr.handler.admin.AdminHandlers" /> |
---|
| 3214 | This will register: Luke/SystemInfo/PluginInfo/ThreadDump/PropertiesRequestHandler. |
---|
| 3215 | (ryan) |
---|
| 3216 | |
---|
| 3217 | 35. SOLR-142: Added RawResponseWriter and ShowFileRequestHandler. This returns config |
---|
| 3218 | files directly. If AdminHandlers are configured, this will be added automatically. |
---|
| 3219 | The jsp files /admin/get-file.jsp and /admin/raw-schema.jsp have been deprecated. |
---|
| 3220 | The deprecated <admin><gettableFiles> will be automatically registered with |
---|
| 3221 | a ShowFileRequestHandler instance for backwards compatibility. (ryan) |
---|
| 3222 | |
---|
| 3223 | 36. SOLR-446: TextResponseWriter can write SolrDocuments and SolrDocumentLists the |
---|
| 3224 | same way it writes Document and DocList. (yonik, ryan) |
---|
| 3225 | |
---|
| 3226 | 37. SOLR-418: Adding a query elevation component. This is an optional component to |
---|
| 3227 | elevate some documents to the top positions (or exclude them) for a given query. |
---|
| 3228 | (ryan) |
---|
| 3229 | |
---|
| 3230 | 38. SOLR-478: Added ability to get back unique key information from the LukeRequestHandler. |
---|
| 3231 | (gsingers) |
---|
| 3232 | |
---|
| 3233 | 39. SOLR-127: HTTP Caching awareness. Solr now recognizes HTTP Request |
---|
| 3234 | headers related to HTTP Caching (see RFC 2616 sec13) and will respond |
---|
| 3235 | with "304 Not Modified" when appropriate. New options have been added |
---|
| 3236 | to solrconfig.xml to influence this behavior. |
---|
| 3237 | (Thomas Peuss via hossman) |
---|
| 3238 | |
---|
| 3239 | 40. SOLR-303: Distributed Search over HTTP. Specification of shards |
---|
| 3240 | argument causes Solr to query those shards and merge the results |
---|
| 3241 | into a single response. Querying, field faceting (sorted only), |
---|
| 3242 | query faceting, highlighting, and debug information are supported |
---|
| 3243 | in distributed mode. |
---|
| 3244 | (Sharad Agarwal, Patrick O'Leary, Sabyasachi Dalal, Stu Hood, |
---|
| 3245 | Jayson Minard, Lars Kotthoff, ryan, yonik) |
---|
| 3246 | |
---|
| 3247 | 41. SOLR-356: Pluggable functions (value sources) that allow |
---|
| 3248 | registration of new functions via solrconfig.xml |
---|
| 3249 | (Doug Daniels via yonik) |
---|
| 3250 | |
---|
| 3251 | 42. SOLR-494: Added cool admin Ajaxed schema explorer. |
---|
| 3252 | (Greg Ludington via ehatcher) |
---|
| 3253 | |
---|
| 3254 | 43. SOLR-497: Added date faceting to the QueryResponse in SolrJ |
---|
| 3255 | and QueryResponseTest (Shalin Shekhar Mangar via gsingers) |
---|
| 3256 | |
---|
| 3257 | 44. SOLR-486: Binary response format, faster and smaller |
---|
| 3258 | than XML and JSON response formats (use wt=javabin). |
---|
| 3259 | BinaryResponseParser for utilizing the binary format via SolrJ |
---|
| 3260 | and is now the default. |
---|
| 3261 | (Noble Paul, yonik) |
---|
| 3262 | |
---|
| 3263 | 45. SOLR-521: StopFilterFactory support for "enablePositionIncrements" |
---|
| 3264 | (Walter Ferrara via hossman) |
---|
| 3265 | |
---|
| 3266 | 46. SOLR-557: Added SolrCore.getSearchComponents() to return an unmodifiable Map. (gsingers) |
---|
| 3267 | |
---|
| 3268 | 47. SOLR-516: Added hl.maxAlternateFieldLength parameter, to set max length for hl.alternateField |
---|
| 3269 | (Koji Sekiguchi via klaas) |
---|
| 3270 | |
---|
| 3271 | 48. SOLR-319: Changed SynonymFilterFactory to "tokenize" synonyms file. |
---|
| 3272 | To use a tokenizer, specify "tokenizerFactory" attribute in <filter>. |
---|
| 3273 | For example: |
---|
| 3274 | <tokenizer class="solr.CJKTokenizerFactory"/> |
---|
| 3275 | <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" expand="true" |
---|
| 3276 | ignoreCase="true" tokenizerFactory="solr.CJKTokenizerFactory"/> |
---|
| 3277 | (koji) |
---|
| 3278 | |
---|
| 3279 | 49. SOLR-515: Added SimilarityFactory capability to schema.xml, |
---|
| 3280 | making config file parameters usable in the construction of |
---|
| 3281 | the global Lucene Similarity implementation. |
---|
| 3282 | (ehatcher) |
---|
| 3283 | |
---|
| 3284 | 50. SOLR-536: Add a DocumentObjectBinder to solrj that converts Objects to and |
---|
| 3285 | from SolrDocuments. (Noble Paul via ryan) |
---|
| 3286 | |
---|
| 3287 | 51. SOLR-595: Add support for Field level boosting in the MoreLikeThis Handler. |
---|
| 3288 | (Tom Morton, gsingers) |
---|
| 3289 | |
---|
| 3290 | 52. SOLR-572: Added SpellCheckComponent and org.apache.solr.spelling package to support more spell |
---|
| 3291 | checking functionality. Also includes ability to add your own SolrSpellChecker implementation that |
---|
| 3292 | plugs in. See http://wiki.apache.org/solr/SpellCheckComponent for more details |
---|
| 3293 | (Shalin Shekhar Mangar, Bojan Smid, gsingers) |
---|
| 3294 | |
---|
| 3295 | 53. SOLR-679: Added accessor methods to Lucene based spell checkers (gsingers) |
---|
| 3296 | |
---|
| 3297 | 54. SOLR-423: Added Request Handler close hook notification so that RequestHandlers can be notified |
---|
| 3298 | when a core is closing. (gsingers, ryan) |
---|
| 3299 | |
---|
| 3300 | 55. SOLR-603: Added ability to partially optimize. (gsingers) |
---|
| 3301 | |
---|
| 3302 | 56. SOLR-483: Add byte/short sorting support (gsingers) |
---|
| 3303 | |
---|
| 3304 | 57. SOLR-14: Add preserveOriginal flag to WordDelimiterFilter |
---|
| 3305 | (Geoffrey Young, Trey Hyde, Ankur Madnani, yonik) |
---|
| 3306 | |
---|
| 3307 | 58. SOLR-502: Add search timeout support. (Sean Timm via yonik) |
---|
| 3308 | |
---|
| 3309 | 59. SOLR-605: Add the ability to register callbacks programatically (ryan, Noble Paul) |
---|
| 3310 | |
---|
| 3311 | 60. SOLR-610: hl.maxAnalyzedChars can be -1 to highlight everything (Lars Kotthoff via klaas) |
---|
| 3312 | |
---|
| 3313 | 61. SOLR-522: Make analysis.jsp show payloads. (Tricia Williams via yonik) |
---|
| 3314 | |
---|
| 3315 | 62. SOLR-611: Expose sort_values returned by QueryComponent in SolrJ's QueryResponse |
---|
| 3316 | (Dan Rosher via shalin) |
---|
| 3317 | |
---|
| 3318 | 63. SOLR-256: Support exposing Solr statistics through JMX (Sharad Agrawal, shalin) |
---|
| 3319 | |
---|
| 3320 | 64. SOLR-666: Expose warmup time in statistics for SolrIndexSearcher and LRUCache (shalin) |
---|
| 3321 | |
---|
| 3322 | 65. SOLR-663: Allow multiple files for stopwords, keepwords, protwords and synonyms |
---|
| 3323 | (Otis Gospodnetic, shalin) |
---|
| 3324 | |
---|
| 3325 | 66. SOLR-469: Added DataImportHandler as a contrib project which makes indexing data from Databases, |
---|
| 3326 | XML files and HTTP data sources into Solr quick and easy. Includes API and implementations for |
---|
| 3327 | supporting multiple data sources, processors and transformers for importing data. Supports full |
---|
| 3328 | data imports as well as incremental (delta) indexing. See http://wiki.apache.org/solr/DataImportHandler |
---|
| 3329 | for more details. (Noble Paul, shalin) |
---|
| 3330 | |
---|
| 3331 | 67. SOLR-622: SpellCheckComponent supports auto-loading indices on startup and optionally, (re)builds |
---|
| 3332 | indices on newSearcher event, if configured in solrconfig.xml (shalin) |
---|
| 3333 | |
---|
| 3334 | 68. SOLR-554: Hierarchical JDK log level selector for SOLR Admin replaces logging.jsp |
---|
| 3335 | (Sean Timm via shalin) |
---|
| 3336 | |
---|
| 3337 | 69. SOLR-506: Emitting HTTP Cache headers can be enabled or disabled through configuration on a |
---|
| 3338 | per-handler basis (shalin) |
---|
| 3339 | |
---|
| 3340 | 70. SOLR-716: Added support for properties in configuration files. Properties can be specified in |
---|
| 3341 | solr.xml and can be used in solrconfig.xml and schema.xml (Henri Biestro, hossman, ryan, shalin) |
---|
| 3342 | |
---|
| 3343 | 71. SOLR-1129 : Support binding dynamic fields to beans in SolrJ (Avlesh Singh , noble) |
---|
| 3344 | |
---|
| 3345 | 72. SOLR-920 : Cache and reuse IndexSchema . A new attribute added in solr.xml called 'shareSchema' (noble) |
---|
| 3346 | |
---|
| 3347 | Changes in runtime behavior |
---|
| 3348 | 1. SOLR-559: use Lucene updateDocument, deleteDocuments methods. This |
---|
| 3349 | removes the maxBufferedDeletes parameter added by SOLR-310 as Lucene |
---|
| 3350 | now manages the deletes. This provides slightly better indexing |
---|
| 3351 | performance and makes overwrites atomic, eliminating the possibility of |
---|
| 3352 | a crash causing duplicates. (yonik) |
---|
| 3353 | |
---|
| 3354 | 2. SOLR-689 / SOLR-695: If you have used "MultiCore" functionality in an unreleased |
---|
| 3355 | version of 1.3-dev, many classes and configs have been renamed for the official |
---|
| 3356 | 1.3 release. Speciffically, solr.xml has replaced multicore.xml, and uses a slightly |
---|
| 3357 | different syntax. The solrj classes: MultiCore{Request/Response/Params} have been |
---|
| 3358 | renamed: CoreAdmin{Request/Response/Params} (hossman, ryan, Henri Biestro) |
---|
| 3359 | |
---|
| 3360 | 3. SOLR-647: reference count the SolrCore uses to prevent a premature |
---|
| 3361 | close while a core is still in use. (Henri Biestro, Noble Paul, yonik) |
---|
| 3362 | |
---|
| 3363 | 4. SOLR-737: SolrQueryParser now uses a ConstantScoreQuery for wildcard |
---|
| 3364 | queries that prevent an exception from being thrown when the number |
---|
| 3365 | of matching terms exceeds the BooleanQuery clause limit. (yonik) |
---|
| 3366 | |
---|
| 3367 | Optimizations |
---|
| 3368 | 1. SOLR-276: improve JSON writer speed. (yonik) |
---|
| 3369 | |
---|
| 3370 | 2. SOLR-310: bound and reduce memory usage by providing <maxBufferedDeletes> parameter, |
---|
| 3371 | which flushes deleted without forcing the user to use <commit/> for this purpose. |
---|
| 3372 | (klaas) |
---|
| 3373 | |
---|
| 3374 | 3. SOLR-348: short-circuit faceting if less than mincount docs match. (yonik) |
---|
| 3375 | |
---|
| 3376 | 4. SOLR-354: Optimize removing all documents. Now when a delete by query |
---|
| 3377 | of *:* is issued, the current index is removed. (yonik) |
---|
| 3378 | |
---|
| 3379 | 5. SOLR-377: Speed up response writers. (yonik) |
---|
| 3380 | |
---|
| 3381 | 6. SOLR-342: Added support into the SolrIndexWriter for using several new features of the new |
---|
| 3382 | LuceneIndexWriter, including: setRAMBufferSizeMB(), setMergePolicy(), setMergeScheduler. |
---|
| 3383 | Also, added support to specify Lucene's autoCommit functionality (not to be confused with Solr's |
---|
| 3384 | similarily named autoCommit functionality) via the <luceneAutoCommit> config. item. See the test |
---|
| 3385 | and example solrconfig.xml <indexDefaults> section for usage. Performance during indexing should |
---|
| 3386 | be significantly increased by moving up to 2.3 due to Lucene's new indexing capabilities. |
---|
| 3387 | Furthermore, the setRAMBufferSizeMB makes it more logical to decide on tuning factors related to |
---|
| 3388 | indexing. For best performance, leave the mergePolicy and mergeScheduler as the defaults and set |
---|
| 3389 | ramBufferSizeMB instead of maxBufferedDocs. The best value for this depends on the types of |
---|
| 3390 | documents in use. 32 should be a good starting point, but reports have shown up to 48 MB provides |
---|
| 3391 | good results. Note, it is acceptable to set both ramBufferSizeMB and maxBufferedDocs, and Lucene |
---|
| 3392 | will flush based on whichever limit is reached first. (gsingers) |
---|
| 3393 | |
---|
| 3394 | 7. SOLR-330: Converted TokenStreams to use Lucene's new char array based |
---|
| 3395 | capabilities. (gsingers) |
---|
| 3396 | |
---|
| 3397 | 8. SOLR-624: Only take snapshots if there are differences to the index (Richard Trey Hyde via gsingers) |
---|
| 3398 | |
---|
| 3399 | 9. SOLR-587: Delete by Query performance greatly improved by using |
---|
| 3400 | new underlying Lucene IndexWriter implementation. (yonik) |
---|
| 3401 | |
---|
| 3402 | 10. SOLR-730: Use read-only IndexReaders that don't synchronize |
---|
| 3403 | isDeleted(). This will speed up function queries and *:* queries |
---|
| 3404 | as well as improve their scalability on multi-CPU systems. |
---|
| 3405 | (Mark Miller via yonik) |
---|
| 3406 | |
---|
| 3407 | Bug Fixes |
---|
| 3408 | 1. Make TextField respect sortMissingFirst and sortMissingLast fields. |
---|
| 3409 | (J.J. Larrea via yonik) |
---|
| 3410 | |
---|
| 3411 | 2. autoCommit/maxDocs was not working properly when large autoCommit/maxTime |
---|
| 3412 | was specified (klaas) |
---|
| 3413 | |
---|
| 3414 | 3. SOLR-283: autoCommit was not working after delete. (ryan) |
---|
| 3415 | |
---|
| 3416 | 4. SOLR-286: ContentStreamBase was not using default encoding for getBytes() |
---|
| 3417 | (Toru Matsuzawa via ryan) |
---|
| 3418 | |
---|
| 3419 | 5. SOLR-292: Fix MoreLikeThis facet counting. (Pieter Berkel via ryan) |
---|
| 3420 | |
---|
| 3421 | 6. SOLR-297: Fix bug in RequiredSolrParams where requiring a field |
---|
| 3422 | specific param would fail if a general default value had been supplied. |
---|
| 3423 | (hossman) |
---|
| 3424 | |
---|
| 3425 | 7. SOLR-331: Fix WordDelimiterFilter handling of offsets for synonyms or |
---|
| 3426 | other injected tokens that can break highlighting. (yonik) |
---|
| 3427 | |
---|
| 3428 | 8. SOLR-282: Snapshooter does not work on Solaris and OS X since the cp command |
---|
| 3429 | there does not have the -l option. Also updated commit/optimize related |
---|
| 3430 | scripts to handle both old and new response format. (bill) |
---|
| 3431 | |
---|
| 3432 | 9. SOLR-294: Logging of elapsed time broken on Solaris because the date command |
---|
| 3433 | there does not support the %s output format. (bill) |
---|
| 3434 | |
---|
| 3435 | 10. SOLR-136: Snappuller - "date -d" and locales don't mix. (Jï¿œÃï¿œrgen Hermann via bill) |
---|
| 3436 | |
---|
| 3437 | 11. SOLR-333: Changed distributiondump.jsp to use Solr HOME instead of CWD to set path. |
---|
| 3438 | |
---|
| 3439 | 12. SOLR-393: Removed duplicate contentType from raw-schema.jsp. (bill) |
---|
| 3440 | |
---|
| 3441 | 13. SOLR-413: Requesting a large numbers of documents to be returned (limit) |
---|
| 3442 | can result in an out-of-memory exception, even for a small index. (yonik) |
---|
| 3443 | |
---|
| 3444 | 14. The CSV loader incorrectly threw an exception when given |
---|
| 3445 | header=true (the default). (ryan, yonik) |
---|
| 3446 | |
---|
| 3447 | 15. SOLR-449: the python and ruby response writers are now able to correctly |
---|
| 3448 | output NaN and Infinity in their respective languages. (klaas) |
---|
| 3449 | |
---|
| 3450 | 16. SOLR-42: HTMLStripReader tokenizers now preserve correct source |
---|
| 3451 | offsets for highlighting. (Grant Ingersoll via yonik) |
---|
| 3452 | |
---|
| 3453 | 17. SOLR-481: Handle UnknownHostException in _info.jsp (gsingers) |
---|
| 3454 | |
---|
| 3455 | 18. SOLR-324: Add proper support for Long and Doubles in sorting, etc. (gsingers) |
---|
| 3456 | |
---|
| 3457 | 19. SOLR-496: Cache-Control max-age changed to Long so Expires |
---|
| 3458 | calculation won't cause overflow. (Thomas Peuss via hossman) |
---|
| 3459 | |
---|
| 3460 | 20. SOLR-535: Fixed typo (Tokenzied -> Tokenized) in schema.jsp (Thomas Peuss via billa) |
---|
| 3461 | |
---|
| 3462 | 21. SOLR-529: Better error messages from SolrQueryParser when field isn't |
---|
| 3463 | specified and there is no defaultSearchField in schema.xml |
---|
| 3464 | (Lars Kotthoff via hossman) |
---|
| 3465 | |
---|
| 3466 | 22. SOLR-530: Better error messages/warnings when parsing schema.xml: |
---|
| 3467 | field using bogus fieldtype and multiple copyFields to a non-multiValue |
---|
| 3468 | field. (Shalin Shekhar Mangar via hossman) |
---|
| 3469 | |
---|
| 3470 | 23. SOLR-528: Better error message when defaultSearchField is bogus or not |
---|
| 3471 | indexed. (Lars Kotthoff via hossman) |
---|
| 3472 | |
---|
| 3473 | 24. SOLR-533: Fixed tests so they don't use hardcoded port numbers. |
---|
| 3474 | (hossman) |
---|
| 3475 | |
---|
| 3476 | 25. SOLR-400: SolrExceptionTest should now handle using OpenDNS as a DNS provider (gsingers) |
---|
| 3477 | |
---|
| 3478 | 26. SOLR-541: Legacy XML update support (provided by SolrUpdateServlet |
---|
| 3479 | when no RequestHandler is mapped to "/update") now logs error correctly. |
---|
| 3480 | (hossman) |
---|
| 3481 | |
---|
| 3482 | 27. SOLR-267: Changed logging to report number of hits, and also provide a mechanism to add log |
---|
| 3483 | messages to be output by the SolrCore via a NamedList toLog member variable. |
---|
| 3484 | (Will Johnson, yseeley, gsingers) |
---|
| 3485 | |
---|
| 3486 | SOLR-267: Removed adding values to the HTTP headers in SolrDispatchFilter (gsingers) |
---|
| 3487 | |
---|
| 3488 | 28. SOLR-509: Moved firstSearcher event notification to the end of the SolrCore constructor |
---|
| 3489 | (Koji Sekiguchi via gsingers) |
---|
| 3490 | |
---|
| 3491 | 29. SOLR-470, SOLR-552, SOLR-544, SOLR-701: Multiple fixes to DateField |
---|
| 3492 | regarding lenient parsing of optional milliseconds, and correct |
---|
| 3493 | formating using the canonical representation. LegacyDateField has |
---|
| 3494 | been added for people who have come to depend on the existing |
---|
| 3495 | broken behavior. (hossman, Stefan Oestreicher) |
---|
| 3496 | |
---|
| 3497 | 30. SOLR-539: Fix for non-atomic long counters and a cast fix to avoid divide |
---|
| 3498 | by zero. (Sean Timm via Otis Gospodnetic) |
---|
| 3499 | |
---|
| 3500 | 31. SOLR-514: Added explicit media-type with UTF* charset to *.xsl files that |
---|
| 3501 | don't already have one. (hossman) |
---|
| 3502 | |
---|
| 3503 | 32. SOLR-505: Give RequestHandlers the possiblity to suppress the generation |
---|
| 3504 | of HTTP caching headers. (Thomas Peuss via Otis Gospodnetic) |
---|
| 3505 | |
---|
| 3506 | 33. SOLR-553: Handle highlighting of phrase terms better when |
---|
| 3507 | hl.usePhraseHighligher=true URL param is used. |
---|
| 3508 | (Bojan Smid via Otis Gospodnetic) |
---|
| 3509 | |
---|
| 3510 | 34. SOLR-590: Limitation in pgrep on Linux platform breaks script-utils fixUser. |
---|
| 3511 | (Hannes Schmidt via billa) |
---|
| 3512 | |
---|
| 3513 | 35. SOLR-597: SolrServlet no longer "caches" SolrCore. This was causing |
---|
| 3514 | problems in Resin, and could potentially cause problems for customized |
---|
| 3515 | usages of SolrServlet. |
---|
| 3516 | |
---|
| 3517 | 36. SOLR-585: Now sets the QParser on the ResponseBuilder (gsingers) |
---|
| 3518 | |
---|
| 3519 | 37. SOLR-604: If the spellchecking path is relative, make it relative to the Solr Data Directory. |
---|
| 3520 | (Shalin Shekhar Mangar via gsingers) |
---|
| 3521 | |
---|
| 3522 | 38. SOLR-584: Make stats.jsp and stats.xsl more robust. |
---|
| 3523 | (Yousef Ourabi and hossman) |
---|
| 3524 | |
---|
| 3525 | 39. SOLR-443: SolrJ: Declare UTF-8 charset on POSTed parameters |
---|
| 3526 | to avoid problems with servlet containers that default to latin-1 |
---|
| 3527 | and allow switching of the exact POST mechanism for parameters |
---|
| 3528 | via useMultiPartPost in CommonsHttpSolrServer. |
---|
| 3529 | (Lars Kotthoff, Andrew Schurman, ryan, yonik) |
---|
| 3530 | |
---|
| 3531 | 40. SOLR-556: multi-valued fields always highlighted in disparate snippets |
---|
| 3532 | (Lars Kotthoff via klaas) |
---|
| 3533 | |
---|
| 3534 | 41. SOLR-501: Fix admin/analysis.jsp UTF-8 input for some other servlet |
---|
| 3535 | containers such as Tomcat. (Hiroaki Kawai, Lars Kotthoff via yonik) |
---|
| 3536 | |
---|
| 3537 | 42. SOLR-616: SpellChecker accuracy configuration is not applied for FileBasedSpellChecker. |
---|
| 3538 | Apply it for FileBasedSpellChecker and IndexBasedSpellChecker both. |
---|
| 3539 | (shalin) |
---|
| 3540 | |
---|
| 3541 | 43. SOLR-648: SpellCheckComponent throws NullPointerException on using spellcheck.q request |
---|
| 3542 | parameter after restarting Solr, if reload is called but build is not called. |
---|
| 3543 | (Jonathan Lee, shalin) |
---|
| 3544 | |
---|
| 3545 | 44. SOLR-598: DebugComponent now always occurs last in the SearchHandler list unless the |
---|
| 3546 | components are explicitly declared. (gsingers) |
---|
| 3547 | |
---|
| 3548 | 45. SOLR-676: DataImportHandler should use UpdateRequestProcessor API instead of directly |
---|
| 3549 | using UpdateHandler. (shalin) |
---|
| 3550 | |
---|
| 3551 | 46. SOLR-696: Fixed bug in NamedListCodec in regards to serializing Iterable objects. (gsingers) |
---|
| 3552 | |
---|
| 3553 | 47. SOLR-669: snappuler fix for FreeBSD/Darwin (Richard "Trey" Hyde via Otis Gospodnetic) |
---|
| 3554 | |
---|
| 3555 | 48. SOLR-606: Fixed spell check collation offset issue. (Stefan Oestreicher , Geoffrey Young, gsingers) |
---|
| 3556 | |
---|
| 3557 | 49. SOLR-589: Improved handling of badly formated query strings (Sean Timm via Otis Gospodnetic) |
---|
| 3558 | |
---|
| 3559 | 50. SOLR-749: Allow QParser and ValueSourceParsers to be extended with same name (hossman, gsingers) |
---|
| 3560 | |
---|
| 3561 | Other Changes |
---|
| 3562 | 1. SOLR-135: Moved common classes to org.apache.solr.common and altered the |
---|
| 3563 | build scripts to make two jars: apache-solr-1.3.jar and |
---|
| 3564 | apache-solr-1.3-common.jar. This common.jar can be used in client code; |
---|
| 3565 | It does not have lucene or junit dependencies. The original classes |
---|
| 3566 | have been replaced with a @Deprecated extended class and are scheduled |
---|
| 3567 | to be removed in a later release. While this change does not affect API |
---|
| 3568 | compatibility, it is recommended to update references to these |
---|
| 3569 | deprecated classes. (ryan) |
---|
| 3570 | |
---|
| 3571 | 2. SOLR-268: Tweaks to post.jar so it prints the error message from Solr. |
---|
| 3572 | (Brian Whitman via hossman) |
---|
| 3573 | |
---|
| 3574 | 3. Upgraded to Lucene 2.2.0; June 18, 2007. |
---|
| 3575 | |
---|
| 3576 | 4. SOLR-215: Static access to SolrCore.getSolrCore() and SolrConfig.config |
---|
| 3577 | have been deprecated in order to support multiple loaded cores. |
---|
| 3578 | (Henri Biestro via ryan) |
---|
| 3579 | |
---|
| 3580 | 5. SOLR-367: The create method in all TokenFilter and Tokenizer Factories |
---|
| 3581 | provided by Solr now declare their specific return types instead of just |
---|
| 3582 | using "TokenStream" (hossman) |
---|
| 3583 | |
---|
| 3584 | 6. SOLR-396: Hooks add to build system for automatic generation of (stub) |
---|
| 3585 | Tokenizer and TokenFilter Factories. |
---|
| 3586 | Also: new Factories for all Tokenizers and TokenFilters provided by the |
---|
| 3587 | lucene-analyzers-2.2.0.jar -- includes support for German, Chinese, |
---|
| 3588 | Russan, Dutch, Greek, Brazilian, Thai, and French. (hossman) |
---|
| 3589 | |
---|
| 3590 | 7. Upgraded to commons-CSV r609327, which fixes escaping bugs and |
---|
| 3591 | introduces new escaping and whitespace handling options to |
---|
| 3592 | increase compatibility with different formats. (yonik) |
---|
| 3593 | |
---|
| 3594 | 8. Upgraded to Lucene 2.3.0; Jan 23, 2008. |
---|
| 3595 | |
---|
| 3596 | 9. SOLR-451: Changed analysis.jsp to use POST instead of GET, also made the input area a |
---|
| 3597 | bit bigger (gsingers) |
---|
| 3598 | |
---|
| 3599 | 10. Upgrade to Lucene 2.3.1 |
---|
| 3600 | |
---|
| 3601 | 11. SOLR-531: Different exit code for rsyncd-start and snappuller if disabled (Thomas Peuss via billa) |
---|
| 3602 | |
---|
| 3603 | 12. SOLR-550: Clarified DocumentBuilder addField javadocs (gsingers) |
---|
| 3604 | |
---|
| 3605 | 13. Upgrade to Lucene 2.3.2 |
---|
| 3606 | |
---|
| 3607 | 14. SOLR-518: Changed luke.xsl to use divs w/css for generating histograms |
---|
| 3608 | instead of SVG (Thomas Peuss via hossman) |
---|
| 3609 | |
---|
| 3610 | 15. SOLR-592: Added ShardParams interface and changed several string literals |
---|
| 3611 | to references to constants in CommonParams. |
---|
| 3612 | (Lars Kotthoff via Otis Gospodnetic) |
---|
| 3613 | |
---|
| 3614 | 16. SOLR-520: Deprecated unused LengthFilter since already core in |
---|
| 3615 | Lucene-Java (hossman) |
---|
| 3616 | |
---|
| 3617 | 17. SOLR-645: Refactored SimpleFacetsTest (Lars Kotthoff via hossman) |
---|
| 3618 | |
---|
| 3619 | 18. SOLR-591: Changed Solrj default value for facet.sort to true (Lars Kotthoff via Shalin) |
---|
| 3620 | |
---|
| 3621 | 19. Upgraded to Lucene 2.4-dev (r669476) to support SOLR-572 (gsingers) |
---|
| 3622 | |
---|
| 3623 | 20. SOLR-636: Improve/simplify example configs; and make index.jsp |
---|
| 3624 | links more resilient to configs loaded via an InputStream |
---|
| 3625 | (Lars Kotthoff, hossman) |
---|
| 3626 | |
---|
| 3627 | 21. SOLR-682: Scripts now support FreeBSD (Richard Trey Hyde via gsingers) |
---|
| 3628 | |
---|
| 3629 | 22. SOLR-489: Added in deprecation comments. (Sean Timm, Lars Kothoff via gsingers) |
---|
| 3630 | |
---|
| 3631 | 23. SOLR-692: Migrated to stable released builds of StAX API 1.0.1 and StAX 1.2.0 (shalin) |
---|
| 3632 | 24. Upgraded to Lucene 2.4-dev (r686801) (yonik) |
---|
| 3633 | 25. Upgraded to Lucene 2.4-dev (r688745) 27-Aug-2008 (yonik) |
---|
| 3634 | 26. Upgraded to Lucene 2.4-dev (r691741) 03-Sep-2008 (yonik) |
---|
| 3635 | 27. Replaced the StAX reference implementation with the geronimo |
---|
| 3636 | StAX API jar, and the Woodstox StAX implementation. (yonik) |
---|
| 3637 | |
---|
| 3638 | Build |
---|
| 3639 | 1. SOLR-411. Changed the names of the Solr JARs to use the defacto standard JAR names based on |
---|
| 3640 | project-name-version.jar. This yields, for example: |
---|
| 3641 | apache-solr-common-1.3-dev.jar |
---|
| 3642 | apache-solr-solrj-1.3-dev.jar |
---|
| 3643 | apache-solr-1.3-dev.jar |
---|
| 3644 | |
---|
| 3645 | 2. SOLR-479: Added clover code coverage targets for committers and the nightly build. Requires |
---|
| 3646 | the Clover library, as licensed to Apache and only available privately. To run: |
---|
| 3647 | ant -Drun.clover=true clean clover test generate-clover-reports |
---|
| 3648 | |
---|
| 3649 | 3. SOLR-510: Nightly release includes client sources. (koji) |
---|
| 3650 | |
---|
| 3651 | 4. SOLR-563: Modified the build process to build contrib projects |
---|
| 3652 | (Shalin Shekhar Mangar via Otis Gospodnetic) |
---|
| 3653 | |
---|
| 3654 | 5. SOLR-673: Modify build file to create javadocs for core, solrj, contrib and "all inclusive" (shalin) |
---|
| 3655 | |
---|
| 3656 | 6. SOLR-672: Nightly release includes contrib sources. (Jeremy Hinegardner, shalin) |
---|
| 3657 | |
---|
| 3658 | 7. SOLR-586: Added ant target and POM files for building maven artifacts of the Solr core, common, |
---|
| 3659 | client and contrib. The target can publish artifacts with source and javadocs. |
---|
| 3660 | (Spencer Crissman, Craig McClanahan, shalin) |
---|
| 3661 | |
---|
| 3662 | ================== Release 1.2 ================== |
---|
| 3663 | |
---|
| 3664 | Upgrading from Solr 1.1 |
---|
| 3665 | ------------------------------------- |
---|
| 3666 | IMPORTANT UPGRADE NOTE: In a master/slave configuration, all searchers/slaves |
---|
| 3667 | should be upgraded before the master! If the master were to be updated |
---|
| 3668 | first, the older searchers would not be able to read the new index format. |
---|
| 3669 | |
---|
| 3670 | Older Apache Solr installations can be upgraded by replacing |
---|
| 3671 | the relevant war file with the new version. No changes to configuration |
---|
| 3672 | files should be needed. |
---|
| 3673 | |
---|
| 3674 | This version of Solr contains a new version of Lucene implementing |
---|
| 3675 | an updated index format. This version of Solr/Lucene can still read |
---|
| 3676 | and update indexes in the older formats, and will convert them to the new |
---|
| 3677 | format on the first index change. One change in the new index format |
---|
| 3678 | is that all "norms" are kept in a single file, greatly reducing the number |
---|
| 3679 | of files per segment. Users of compound file indexes will want to consider |
---|
| 3680 | converting to the non-compound format for faster indexing and slightly better |
---|
| 3681 | search concurrency. |
---|
| 3682 | |
---|
| 3683 | The JSON response format for facets has changed to make it easier for |
---|
| 3684 | clients to retain sorted order. Use json.nl=map explicitly in clients |
---|
| 3685 | to get the old behavior, or add it as a default to the request handler |
---|
| 3686 | in solrconfig.xml |
---|
| 3687 | |
---|
| 3688 | The Lucene based Solr query syntax is slightly more strict. |
---|
| 3689 | A ':' in a field value must be escaped or the whole value must be quoted. |
---|
| 3690 | |
---|
| 3691 | The Solr "Request Handler" framework has been updated in two key ways: |
---|
| 3692 | First, if a Request Handler is registered in solrconfig.xml with a name |
---|
| 3693 | starting with "/" then it can be accessed using path-based URL, instead of |
---|
| 3694 | using the legacy "/select?qt=name" URL structure. Second, the Request |
---|
| 3695 | Handler framework has been extended making it possible to write Request |
---|
| 3696 | Handlers that process streams of data for doing updates, and there is a |
---|
| 3697 | new-style Request Handler for XML updates given the name of "/update" in |
---|
| 3698 | the example solrconfig.xml. Existing installations without this "/update" |
---|
| 3699 | handler will continue to use the old update servlet and should see no |
---|
| 3700 | changes in behavior. For new-style update handlers, errors are now |
---|
| 3701 | reflected in the HTTP status code, Content-type checking is more strict, |
---|
| 3702 | and the response format has changed and is controllable via the wt |
---|
| 3703 | parameter. |
---|
| 3704 | |
---|
| 3705 | |
---|
| 3706 | |
---|
| 3707 | Detailed Change List |
---|
| 3708 | -------------------- |
---|
| 3709 | |
---|
| 3710 | New Features |
---|
| 3711 | 1. SOLR-82: Default field values can be specified in the schema.xml. |
---|
| 3712 | (Ryan McKinley via hossman) |
---|
| 3713 | |
---|
| 3714 | 2. SOLR-89: Two new TokenFilters with corresponding Factories... |
---|
| 3715 | * TrimFilter - Trims leading and trailing whitespace from Tokens |
---|
| 3716 | * PatternReplaceFilter - applies a Pattern to each token in the |
---|
| 3717 | stream, replacing match occurances with a specified replacement. |
---|
| 3718 | (hossman) |
---|
| 3719 | |
---|
| 3720 | 3. SOLR-91: allow configuration of a limit of the number of searchers |
---|
| 3721 | that can be warming in the background. This can be used to avoid |
---|
| 3722 | out-of-memory errors, or contention caused by more and more searchers |
---|
| 3723 | warming in the background. An error is thrown if the limit specified |
---|
| 3724 | by maxWarmingSearchers in solrconfig.xml is exceeded. (yonik) |
---|
| 3725 | |
---|
| 3726 | 4. SOLR-106: New faceting parameters that allow specification of a |
---|
| 3727 | minimum count for returned facets (facet.mincount), paging through facets |
---|
| 3728 | (facet.offset, facet.limit), and explicit sorting (facet.sort). |
---|
| 3729 | facet.zeros is now deprecated. (yonik) |
---|
| 3730 | |
---|
| 3731 | 5. SOLR-80: Negative queries are now allowed everywhere. Negative queries |
---|
| 3732 | are generated and cached as their positive counterpart, speeding |
---|
| 3733 | generation and generally resulting in smaller sets to cache. |
---|
| 3734 | Set intersections in SolrIndexSearcher are more efficient, |
---|
| 3735 | starting with the smallest positive set, subtracting all negative |
---|
| 3736 | sets, then intersecting with all other positive sets. (yonik) |
---|
| 3737 | |
---|
| 3738 | 6. SOLR-117: Limit a field faceting to constraints with a prefix specified |
---|
| 3739 | by facet.prefix or f.<field>.facet.prefix. (yonik) |
---|
| 3740 | |
---|
| 3741 | 7. SOLR-107: JAVA API: Change NamedList to use Java5 generics |
---|
| 3742 | and implement Iterable<Map.Entry> (Ryan McKinley via yonik) |
---|
| 3743 | |
---|
| 3744 | 8. SOLR-104: Support for "Update Plugins" -- RequestHandlers that want |
---|
| 3745 | access to streams of data for doing updates. ContentStreams can come |
---|
| 3746 | from the raw POST body, multi-part form data, or remote URLs. |
---|
| 3747 | Included in this change is a new SolrDispatchFilter that allows |
---|
| 3748 | RequestHandlers registered with names that begin with a "/" to be |
---|
| 3749 | accessed using a URL structure based on that name. |
---|
| 3750 | (Ryan McKinley via hossman) |
---|
| 3751 | |
---|
| 3752 | 9. SOLR-126: DirectUpdateHandler2 supports autocommitting after a specified time |
---|
| 3753 | (in ms), using <autoCommit><maxTime>10000</maxTime></autoCommit>. |
---|
| 3754 | (Ryan McKinley via klaas). |
---|
| 3755 | |
---|
| 3756 | 10. SOLR-116: IndexInfoRequestHandler added. (Erik Hatcher) |
---|
| 3757 | |
---|
| 3758 | 11. SOLR-79: Add system property ${<sys.prop>[:<default>]} substitution for |
---|
| 3759 | configuration files loaded, including schema.xml and solrconfig.xml. |
---|
| 3760 | (Erik Hatcher with inspiration from Andrew Saar) |
---|
| 3761 | |
---|
| 3762 | 12. SOLR-149: Changes to make Solr more easily embeddable, in addition |
---|
| 3763 | to logging which request handler handled each request. |
---|
| 3764 | (Ryan McKinley via yonik) |
---|
| 3765 | |
---|
| 3766 | 13. SOLR-86: Added standalone Java-based command-line updater. |
---|
| 3767 | (Erik Hatcher via Bertrand Delecretaz) |
---|
| 3768 | |
---|
| 3769 | 14. SOLR-152: DisMaxRequestHandler now supports configurable alternate |
---|
| 3770 | behavior when q is not specified. A "q.alt" param can be specified |
---|
| 3771 | using SolrQueryParser syntax as a mechanism for specifying what query |
---|
| 3772 | the dismax handler should execute if the main user query (q) is blank. |
---|
| 3773 | (Ryan McKinley via hossman) |
---|
| 3774 | |
---|
| 3775 | 15. SOLR-158: new "qs" (Query Slop) param for DisMaxRequestHandler |
---|
| 3776 | allows for specifying the amount of default slop to use when parsing |
---|
| 3777 | explicit phrase queries from the user. |
---|
| 3778 | (Adam Hiatt via hossman) |
---|
| 3779 | |
---|
| 3780 | 16. SOLR-81: SpellCheckerRequestHandler that uses the SpellChecker from |
---|
| 3781 | the Lucene contrib. |
---|
| 3782 | (Otis Gospodnetic and Adam Hiatt) |
---|
| 3783 | |
---|
| 3784 | 17. SOLR-182: allow lazy loading of request handlers on first request. |
---|
| 3785 | (Ryan McKinley via yonik) |
---|
| 3786 | |
---|
| 3787 | 18. SOLR-81: More SpellCheckerRequestHandler enhancements, inlcluding |
---|
| 3788 | support for relative or absolute directory path configurations, as |
---|
| 3789 | well as RAM based directory. (hossman) |
---|
| 3790 | |
---|
| 3791 | 19. SOLR-197: New parameters for input: stream.contentType for specifying |
---|
| 3792 | or overriding the content type of input, and stream.file for reading |
---|
| 3793 | local files. (Ryan McKinley via yonik) |
---|
| 3794 | |
---|
| 3795 | 20. SOLR-66: CSV data format for document additions and updates. (yonik) |
---|
| 3796 | |
---|
| 3797 | 21. SOLR-184: add echoHandler=true to responseHeader, support echoParams=all |
---|
| 3798 | (Ryan McKinley via ehatcher) |
---|
| 3799 | |
---|
| 3800 | 22. SOLR-211: Added a regex PatternTokenizerFactory. This extracts tokens |
---|
| 3801 | from the input string using a regex Pattern. (Ryan McKinley) |
---|
| 3802 | |
---|
| 3803 | 23. SOLR-162: Added a "Luke" request handler and other admin helpers. |
---|
| 3804 | This exposes the system status through the standard requestHandler |
---|
| 3805 | framework. (ryan) |
---|
| 3806 | |
---|
| 3807 | 24. SOLR-212: Added a DirectSolrConnection class. This lets you access |
---|
| 3808 | solr using the standard request/response formats, but does not require |
---|
| 3809 | an HTTP connection. It is designed for embedded applications. (ryan) |
---|
| 3810 | |
---|
| 3811 | 25. SOLR-204: The request dispatcher (added in SOLR-104) can handle |
---|
| 3812 | calls to /select. This offers uniform error handling for /update and |
---|
| 3813 | /select. To enable this behavior, you must add: |
---|
| 3814 | <requestDispatcher handleSelect="true" > to your solrconfig.xml |
---|
| 3815 | See the example solrconfig.xml for details. (ryan) |
---|
| 3816 | |
---|
| 3817 | 26. SOLR-170: StandardRequestHandler now supports a "sort" parameter. |
---|
| 3818 | Using the ';' syntax is still supported, but it is recommended to |
---|
| 3819 | transition to the new syntax. (ryan) |
---|
| 3820 | |
---|
| 3821 | 27. SOLR-181: The index schema now supports "required" fields. Attempts |
---|
| 3822 | to add a document without a required field will fail, returning a |
---|
| 3823 | descriptive error message. By default, the uniqueKey field is |
---|
| 3824 | a required field. This can be disabled by setting required=false |
---|
| 3825 | in schema.xml. (Greg Ludington via ryan) |
---|
| 3826 | |
---|
| 3827 | 28. SOLR-217: Fields configured in the schema to be neither indexed or |
---|
| 3828 | stored will now be quietly ignored by Solr when Documents are added. |
---|
| 3829 | The example schema has a comment explaining how this can be used to |
---|
| 3830 | ignore any "unknown" fields. |
---|
| 3831 | (Will Johnson via hossman) |
---|
| 3832 | |
---|
| 3833 | 29. SOLR-227: If schema.xml defines multiple fieldTypes, fields, or |
---|
| 3834 | dynamicFields with the same name, a severe error will be logged rather |
---|
| 3835 | then quietly continuing. Depending on the <abortOnConfigurationError> |
---|
| 3836 | settings, this may halt the server. Likewise, if solrconfig.xml |
---|
| 3837 | defines multiple RequestHandlers with the same name it will also add |
---|
| 3838 | an error. (ryan) |
---|
| 3839 | |
---|
| 3840 | 30. SOLR-226: Added support for dynamic field as the destination of a |
---|
| 3841 | copyField using glob (*) replacement. (ryan) |
---|
| 3842 | |
---|
| 3843 | 31. SOLR-224: Adding a PhoneticFilterFactory that uses apache commons codec |
---|
| 3844 | language encoders to build phonetically similar tokens. This currently |
---|
| 3845 | supports: DoubleMetaphone, Metaphone, Soundex, and RefinedSoundex (ryan) |
---|
| 3846 | |
---|
| 3847 | 32. SOLR-199: new n-gram tokenizers available via NGramTokenizerFactory |
---|
| 3848 | and EdgeNGramTokenizerFactory. (Adam Hiatt via yonik) |
---|
| 3849 | |
---|
| 3850 | 33. SOLR-234: TrimFilter can update the Token's startOffset and endOffset |
---|
| 3851 | if updateOffsets="true". By default the Token offsets are unchanged. |
---|
| 3852 | (ryan) |
---|
| 3853 | |
---|
| 3854 | 34. SOLR-208: new example_rss.xsl and example_atom.xsl to provide more |
---|
| 3855 | examples for people about the Solr XML response format and how they |
---|
| 3856 | can transform it to suit different needs. |
---|
| 3857 | (Brian Whitman via hossman) |
---|
| 3858 | |
---|
| 3859 | 35. SOLR-249: Deprecated SolrException( int, ... ) constructors in favor |
---|
| 3860 | of constructors that takes an ErrorCode enum. This will ensure that |
---|
| 3861 | all SolrExceptions use a valid HTTP status code. (ryan) |
---|
| 3862 | |
---|
| 3863 | 36. SOLR-386: Abstracted SolrHighlighter and moved existing implementation |
---|
| 3864 | to DefaultSolrHighlighter. Adjusted SolrCore and solrconfig.xml so |
---|
| 3865 | that highlighter is configurable via a class attribute. Allows users |
---|
| 3866 | to use their own highlighter implementation. (Tricia Williams via klaas) |
---|
| 3867 | |
---|
| 3868 | Changes in runtime behavior |
---|
| 3869 | 1. Highlighting using DisMax will only pick up terms from the main |
---|
| 3870 | user query, not boost or filter queries (klaas). |
---|
| 3871 | |
---|
| 3872 | 2. SOLR-125: Change default of json.nl to flat, change so that |
---|
| 3873 | json.nl only affects items where order matters (facet constraint |
---|
| 3874 | listings). Fix JSON output bug for null values. Internal JAVA API: |
---|
| 3875 | change most uses of NamedList to SimpleOrderedMap. (yonik) |
---|
| 3876 | |
---|
| 3877 | 3. A new method "getSolrQueryParser" has been added to the IndexSchema |
---|
| 3878 | class for retrieving a new SolrQueryParser instance with all options |
---|
| 3879 | specified in the schema.xml's <solrQueryParser> block set. The |
---|
| 3880 | documentation for the SolrQueryParser constructor and it's use of |
---|
| 3881 | IndexSchema have also been clarified. |
---|
| 3882 | (Erik Hatcher and hossman) |
---|
| 3883 | |
---|
| 3884 | 4. DisMaxRequestHandler's bq, bf, qf, and pf parameters can now accept |
---|
| 3885 | multiple values (klaas). |
---|
| 3886 | |
---|
| 3887 | 5. Query are re-written before highlighting is performed. This enables |
---|
| 3888 | proper highlighting of prefix and wildcard queries (klaas). |
---|
| 3889 | |
---|
| 3890 | 6. A meaningful exception is raised when attempting to add a doc missing |
---|
| 3891 | a unique id if it is declared in the schema and allowDups=false. |
---|
| 3892 | (ryan via klaas) |
---|
| 3893 | |
---|
| 3894 | 7. SOLR-183: Exceptions with error code 400 are raised when |
---|
| 3895 | numeric argument parsing fails. RequiredSolrParams class added |
---|
| 3896 | to facilitate checking for parameters that must be present. |
---|
| 3897 | (Ryan McKinley, J.J. Larrea via yonik) |
---|
| 3898 | |
---|
| 3899 | 8. SOLR-179: By default, solr will abort after any severe initalization |
---|
| 3900 | errors. This behavior can be disabled by setting: |
---|
| 3901 | <abortOnConfigurationError>false</abortOnConfigurationError> |
---|
| 3902 | in solrconfig.xml (ryan) |
---|
| 3903 | |
---|
| 3904 | 9. The example solrconfig.xml maps /update to XmlUpdateRequestHandler using |
---|
| 3905 | the new request dispatcher (SOLR-104). This requires posted content to |
---|
| 3906 | have a valid contentType: curl -H 'Content-type:text/xml; charset=utf-8' |
---|
| 3907 | The response format matches that of /select and returns standard error |
---|
| 3908 | codes. To enable solr1.1 style /update, do not map "/update" to any |
---|
| 3909 | handler in solrconfig.xml (ryan) |
---|
| 3910 | |
---|
| 3911 | 10. SOLR-231: If a charset is not specified in the contentType, |
---|
| 3912 | ContentStream.getReader() will use UTF-8 encoding. (ryan) |
---|
| 3913 | |
---|
| 3914 | 11. SOLR-230: More options for post.jar to support stdin, xml on the |
---|
| 3915 | commandline, and defering commits. Tutorial modified to take |
---|
| 3916 | advantage of these options so there is no need for curl. |
---|
| 3917 | (hossman) |
---|
| 3918 | |
---|
| 3919 | 12. SOLR-128: Upgraded Jetty to the latest stable release 6.1.3 (ryan) |
---|
| 3920 | |
---|
| 3921 | Optimizations |
---|
| 3922 | 1. SOLR-114: HashDocSet specific implementations of union() and andNot() |
---|
| 3923 | for a 20x performance improvement for those set operations, and a new |
---|
| 3924 | hash algorithm speeds up exists() by 10% and intersectionSize() by 8%. |
---|
| 3925 | (yonik) |
---|
| 3926 | |
---|
| 3927 | 2. SOLR-115: Solr now uses BooleanQuery.clauses() instead of |
---|
| 3928 | BooleanQuery.getClauses() in any situation where there is no risk of |
---|
| 3929 | modifying the original query. |
---|
| 3930 | (hossman) |
---|
| 3931 | |
---|
| 3932 | 3. SOLR-221: Speed up sorted faceting on multivalued fields by ~60% |
---|
| 3933 | when the base set consists of a relatively large portion of the |
---|
| 3934 | index. (yonik) |
---|
| 3935 | |
---|
| 3936 | 4. SOLR-221: Added a facet.enum.cache.minDf parameter which avoids |
---|
| 3937 | using the filterCache for terms that match few documents, trading |
---|
| 3938 | decreased memory usage for increased query time. (yonik) |
---|
| 3939 | |
---|
| 3940 | Bug Fixes |
---|
| 3941 | 1. SOLR-87: Parsing of synonym files did not correctly handle escaped |
---|
| 3942 | whitespace such as \r\n\t\b\f. (yonik) |
---|
| 3943 | |
---|
| 3944 | 2. SOLR-92: DOMUtils.getText (used when parsing config files) did not |
---|
| 3945 | work properly with many DOM implementations when dealing with |
---|
| 3946 | "Attributes". (Ryan McKinley via hossman) |
---|
| 3947 | |
---|
| 3948 | 3. SOLR-9,SOLR-99: Tighten up sort specification error checking, throw |
---|
| 3949 | exceptions for missing sort specifications or a sort on a non-indexed |
---|
| 3950 | field. (Ryan McKinley via yonik) |
---|
| 3951 | |
---|
| 3952 | 4. SOLR-145: Fix for bug introduced in SOLR-104 where some Exceptions |
---|
| 3953 | were being ignored by all "out of the box" RequestHandlers. (hossman) |
---|
| 3954 | |
---|
| 3955 | 5. SOLR-166: JNDI solr.home code refactoring. SOLR-104 moved |
---|
| 3956 | some JNDI related code to the init method of a Servlet Filter - |
---|
| 3957 | according to the Servlet Spec, all Filter's should be initialized |
---|
| 3958 | prior to initializing any Servlets, but this is not the case in at |
---|
| 3959 | least one Servlet Container (Resin). This "bug fix" refactors |
---|
| 3960 | this JNDI code so that it should be executed the first time any |
---|
| 3961 | attempt is made to use the solr.home dir. |
---|
| 3962 | (Ryan McKinley via hossman) |
---|
| 3963 | |
---|
| 3964 | 6. SOLR-173: Bug fix to SolrDispatchFilter to reduce "too many open |
---|
| 3965 | files" problem was that SolrDispatchFilter was not closing requests |
---|
| 3966 | when finished. Also modified ResponseWriters to only fetch a Searcher |
---|
| 3967 | reference if necessary for writing out DocLists. |
---|
| 3968 | (Ryan McKinley via hossman) |
---|
| 3969 | |
---|
| 3970 | 7. SOLR-168: Fix display positioning of multiple tokens at the same |
---|
| 3971 | position in analysis.jsp (yonik) |
---|
| 3972 | |
---|
| 3973 | 8. SOLR-167: The SynonymFilter sometimes generated incorrect offsets when |
---|
| 3974 | multi token synonyms were mached in the source text. (yonik) |
---|
| 3975 | |
---|
| 3976 | 9. SOLR-188: bin scripts do not support non-default webapp names. Added "-U" |
---|
| 3977 | option to specify a full path to the update url, overriding the |
---|
| 3978 | "-h" (hostname), "-p" (port) and "-w" (webapp name) parameters. |
---|
| 3979 | (Jeff Rodenburg via billa) |
---|
| 3980 | |
---|
| 3981 | 10. SOLR-198: RunExecutableListener always waited for the process to |
---|
| 3982 | finish, even when wait="false" was set. (Koji Sekiguchi via yonik) |
---|
| 3983 | |
---|
| 3984 | 11. SOLR-207: Changed distribution scripts to remove recursive find |
---|
| 3985 | and avoid use of "find -maxdepth" on platforms where it is not |
---|
| 3986 | supported. (yonik) |
---|
| 3987 | |
---|
| 3988 | 12. SOLR-222: Changing writeLockTimeout in solrconfig.xml did not |
---|
| 3989 | change the effective timeout. (Koji Sekiguchi via yonik) |
---|
| 3990 | |
---|
| 3991 | 13. Changed the SOLR-104 RequestDispatcher so that /select?qt=xxx can not |
---|
| 3992 | access handlers that start with "/". This makes path based authentication |
---|
| 3993 | possible for path based request handlers. (ryan) |
---|
| 3994 | |
---|
| 3995 | 14. SOLR-214: Some servlet containers (including Tomcat and Resin) do not |
---|
| 3996 | obey the specified charset. Rather then letting the the container handle |
---|
| 3997 | it solr now uses the charset from the header contentType to decode posted |
---|
| 3998 | content. Using the contentType: "text/xml; charset=utf-8" will force |
---|
| 3999 | utf-8 encoding. If you do not specify a contentType, it will use the |
---|
| 4000 | platform default. (Koji Sekiguchi via ryan) |
---|
| 4001 | |
---|
| 4002 | 15. SOLR-241: Undefined system properties used in configuration files now |
---|
| 4003 | cause a clear message to be logged rather than an obscure exception thrown. |
---|
| 4004 | (Koji Sekiguchi via ehatcher) |
---|
| 4005 | |
---|
| 4006 | Other Changes |
---|
| 4007 | 1. Updated to Lucene 2.1 |
---|
| 4008 | |
---|
| 4009 | 2. Updated to Lucene 2007-05-20_00-04-53 |
---|
| 4010 | |
---|
| 4011 | ================== Release 1.1.0 ================== |
---|
| 4012 | |
---|
| 4013 | Status |
---|
| 4014 | ------ |
---|
| 4015 | This is the first release since Solr joined the Incubator, and brings many |
---|
| 4016 | new features and performance optimizations including highlighting, |
---|
| 4017 | faceted browsing, and JSON/Python/Ruby response formats. |
---|
| 4018 | |
---|
| 4019 | |
---|
| 4020 | Upgrading from previous Solr versions |
---|
| 4021 | ------------------------------------- |
---|
| 4022 | Older Apache Solr installations can be upgraded by replacing |
---|
| 4023 | the relevant war file with the new version. No changes to configuration |
---|
| 4024 | files are needed and the index format has not changed. |
---|
| 4025 | |
---|
| 4026 | The default version of the Solr XML response syntax has been changed to 2.2. |
---|
| 4027 | Behavior can be preserved for those clients not explicitly specifying a |
---|
| 4028 | version by adding a default to the request handler in solrconfig.xml |
---|
| 4029 | |
---|
| 4030 | By default, Solr will no longer use a searcher that has not fully warmed, |
---|
| 4031 | and requests will block in the meantime. To change back to the previous |
---|
| 4032 | behavior of using a cold searcher in the event there is no other |
---|
| 4033 | warm searcher, see the useColdSearcher config item in solrconfig.xml |
---|
| 4034 | |
---|
| 4035 | The XML response format when adding multiple documents to the collection |
---|
| 4036 | in a single <add> command has changed to return a single <result>. |
---|
| 4037 | |
---|
| 4038 | |
---|
| 4039 | Detailed Change List |
---|
| 4040 | -------------------- |
---|
| 4041 | |
---|
| 4042 | New Features |
---|
| 4043 | 1. added support for setting Lucene's positionIncrementGap |
---|
| 4044 | 2. Admin: new statistics for SolrIndexSearcher |
---|
| 4045 | 3. Admin: caches now show config params on stats page |
---|
| 4046 | 3. max() function added to FunctionQuery suite |
---|
| 4047 | 4. postOptimize hook, mirroring the functionallity of the postCommit hook, |
---|
| 4048 | but only called on an index optimize. |
---|
| 4049 | 5. Ability to HTTP POST query requests to /select in addition to HTTP-GET |
---|
| 4050 | 6. The default search field may now be overridden by requests to the |
---|
| 4051 | standard request handler using the df query parameter. (Erik Hatcher) |
---|
| 4052 | 7. Added DisMaxRequestHandler and SolrPluginUtils. (Chris Hostetter) |
---|
| 4053 | 8. Support for customizing the QueryResponseWriter per request |
---|
| 4054 | (Mike Baranczak / SOLR-16 / hossman) |
---|
| 4055 | 9. Added KeywordTokenizerFactory (hossman) |
---|
| 4056 | 10. copyField accepts dynamicfield-like names as the source. |
---|
| 4057 | (Darren Erik Vengroff via yonik, SOLR-21) |
---|
| 4058 | 11. new DocSet.andNot(), DocSet.andNotSize() (yonik) |
---|
| 4059 | 12. Ability to store term vectors for fields. (Mike Klaas via yonik, SOLR-23) |
---|
| 4060 | 13. New abstract BufferedTokenStream for people who want to write |
---|
| 4061 | Tokenizers or TokenFilters that require arbitrary buffering of the |
---|
| 4062 | stream. (SOLR-11 / yonik, hossman) |
---|
| 4063 | 14. New RemoveDuplicatesToken - useful in situations where |
---|
| 4064 | synonyms, stemming, or word-deliminater-ing produce identical tokens at |
---|
| 4065 | the same position. (SOLR-11 / yonik, hossman) |
---|
| 4066 | 15. Added highlighting to SolrPluginUtils and implemented in StandardRequestHandler |
---|
| 4067 | and DisMaxRequestHandler (SOLR-24 / Mike Klaas via hossman,yonik) |
---|
| 4068 | 16. SnowballPorterFilterFactory language is configurable via the "language" |
---|
| 4069 | attribute, with the default being "English". (Bertrand Delacretaz via yonik, SOLR-27) |
---|
| 4070 | 17. ISOLatin1AccentFilterFactory, instantiates ISOLatin1AccentFilter to remove accents. |
---|
| 4071 | (Bertrand Delacretaz via yonik, SOLR-28) |
---|
| 4072 | 18. JSON, Python, Ruby QueryResponseWriters: use wt="json", "python" or "ruby" |
---|
| 4073 | (yonik, SOLR-31) |
---|
| 4074 | 19. Make web admin pages return UTF-8, change Content-type declaration to include a |
---|
| 4075 | space between the mime-type and charset (Philip Jacob, SOLR-35) |
---|
| 4076 | 20. Made query parser default operator configurable via schema.xml: |
---|
| 4077 | <solrQueryParser defaultOperator="AND|OR"/> |
---|
| 4078 | The default operator remains "OR". |
---|
| 4079 | 21. JAVA API: new version of SolrIndexSearcher.getDocListAndSet() which takes |
---|
| 4080 | flags (Greg Ludington via yonik, SOLR-39) |
---|
| 4081 | 22. A HyphenatedWordsFilter, a text analysis filter used during indexing to rejoin |
---|
| 4082 | words that were hyphenated and split by a newline. (Boris Vitez via yonik, SOLR-41) |
---|
| 4083 | 23. Added a CompressableField base class which allows fields of derived types to |
---|
| 4084 | be compressed using the compress=true setting. The field type also gains the |
---|
| 4085 | ability to specify a size threshold at which field data is compressed. |
---|
| 4086 | (klaas, SOLR-45) |
---|
| 4087 | 24. Simple faceted search support for fields (enumerating terms) |
---|
| 4088 | and arbitrary queries added to both StandardRequestHandler and |
---|
| 4089 | DisMaxRequestHandler. (hossman, SOLR-44) |
---|
| 4090 | 25. In addition to specifying default RequestHandler params in the |
---|
| 4091 | solrconfig.xml, support has been added for configuring values to be |
---|
| 4092 | appended to the multi-val request params, as well as for configuring |
---|
| 4093 | invariant params that can not overridden in the query. (hossman, SOLR-46) |
---|
| 4094 | 26. Default operator for query parsing can now be specified with q.op=AND|OR |
---|
| 4095 | from the client request, overriding the schema value. (ehatcher) |
---|
| 4096 | 27. New XSLTResponseWriter does server side XSLT processing of XML Response. |
---|
| 4097 | In the process, an init(NamedList) method was added to QueryResponseWriter |
---|
| 4098 | which works the same way as SolrRequestHandler. |
---|
| 4099 | (Bertrand Delacretaz / SOLR-49 / hossman) |
---|
| 4100 | 28. json.wrf parameter adds a wrapper-function around the JSON response, |
---|
| 4101 | useful in AJAX with dynamic script tags for specifying a JavaScript |
---|
| 4102 | callback function. (Bertrand Delacretaz via yonik, SOLR-56) |
---|
| 4103 | 29. autoCommit can be specified every so many documents added (klaas, SOLR-65) |
---|
| 4104 | 30. ${solr.home}/lib directory can now be used for specifying "plugin" jars |
---|
| 4105 | (hossman, SOLR-68) |
---|
| 4106 | 31. Support for "Date Math" relative "NOW" when specifying values of a |
---|
| 4107 | DateField in a query -- or when adding a document. |
---|
| 4108 | (hossman, SOLR-71) |
---|
| 4109 | 32. useColdSearcher control in solrconfig.xml prevents the first searcher |
---|
| 4110 | from being used before it's done warming. This can help prevent |
---|
| 4111 | thrashing on startup when multiple requests hit a cold searcher. |
---|
| 4112 | The default is "false", preventing use before warm. (yonik, SOLR-77) |
---|
| 4113 | |
---|
| 4114 | Changes in runtime behavior |
---|
| 4115 | 1. classes reorganized into different packages, package names changed to Apache |
---|
| 4116 | 2. force read of document stored fields in QuerySenderListener |
---|
| 4117 | 3. Solr now looks in ./solr/conf for config, ./solr/data for data |
---|
| 4118 | configurable via solr.solr.home system property |
---|
| 4119 | 4. Highlighter params changed to be prefixed with "hl."; allow fragmentsize |
---|
| 4120 | customization and per-field overrides on many options |
---|
| 4121 | (Andrew May via klaas, SOLR-37) |
---|
| 4122 | 5. Default param values for DisMaxRequestHandler should now be specified |
---|
| 4123 | using a '<lst name="defaults">...</lst>' init param, for backwards |
---|
| 4124 | compatability all init prams will be used as defaults if an init param |
---|
| 4125 | with that name does not exist. (hossman, SOLR-43) |
---|
| 4126 | 6. The DisMaxRequestHandler now supports multiple occurances of the "fq" |
---|
| 4127 | param. (hossman, SOLR-44) |
---|
| 4128 | 7. FunctionQuery.explain now uses ComplexExplanation to provide more |
---|
| 4129 | accurate score explanations when composed in a BooleanQuery. |
---|
| 4130 | (hossman, SOLR-25) |
---|
| 4131 | 8. Document update handling locking is much sparser, allowing performance gains |
---|
| 4132 | through multiple threads. Large commits also might be faster (klaas, SOLR-65) |
---|
| 4133 | 9. Lazy field loading can be enabled via a solrconfig directive. This will be faster when |
---|
| 4134 | not all stored fields are needed from a document (klaas, SOLR-52) |
---|
| 4135 | 10. Made admin JSPs return XML and transform them with new XSL stylesheets |
---|
| 4136 | (Otis Gospodnetic, SOLR-58) |
---|
| 4137 | 11. If the "echoParams=explicit" request parameter is set, request parameters are copied |
---|
| 4138 | to the output. In an XML output, they appear in new <lst name="params"> list inside |
---|
| 4139 | the new <lst name="responseHeader"> element, which replaces the old <responseHeader>. |
---|
| 4140 | Adding a version=2.1 parameter to the request produces the old format, for backwards |
---|
| 4141 | compatibility (bdelacretaz and yonik, SOLR-59). |
---|
| 4142 | |
---|
| 4143 | Optimizations |
---|
| 4144 | 1. getDocListAndSet can now generate both a DocList and a DocSet from a |
---|
| 4145 | single lucene query. |
---|
| 4146 | 2. BitDocSet.intersectionSize(HashDocSet) no longer generates an intermediate |
---|
| 4147 | set |
---|
| 4148 | 3. OpenBitSet completed, replaces BitSet as the implementation for BitDocSet. |
---|
| 4149 | Iteration is faster, and BitDocSet.intersectionSize(BitDocSet) and unionSize |
---|
| 4150 | is between 3 and 4 times faster. (yonik, SOLR-15) |
---|
| 4151 | 4. much faster unionSize when one of the sets is a HashDocSet: O(smaller_set_size) |
---|
| 4152 | 5. Optimized getDocSet() for term queries resulting in a 36% speedup of facet.field |
---|
| 4153 | queries where DocSets aren't cached (for example, if the number of terms in the field |
---|
| 4154 | is larger than the filter cache.) (yonik) |
---|
| 4155 | 6. Optimized facet.field faceting by as much as 500 times when the field has |
---|
| 4156 | a single token per document (not multiValued & not tokenized) by using the |
---|
| 4157 | Lucene FieldCache entry for that field to tally term counts. The first request |
---|
| 4158 | utilizing the FieldCache will take longer than subsequent ones. |
---|
| 4159 | |
---|
| 4160 | Bug Fixes |
---|
| 4161 | 1. Fixed delete-by-id for field types who's indexed form is different |
---|
| 4162 | from the printable form (mainly sortable numeric types). |
---|
| 4163 | 2. Added escaping of attribute values in the XML response (Erik Hatcher) |
---|
| 4164 | 3. Added empty extractTerms() to FunctionQuery to enable use in |
---|
| 4165 | a MultiSearcher (Yonik) |
---|
| 4166 | 4. WordDelimiterFilter sometimes lost token positionIncrement information |
---|
| 4167 | 5. Fix reverse sorting for fields were sortMissingFirst=true |
---|
| 4168 | (Rob Staveley, yonik) |
---|
| 4169 | 6. Worked around a Jetty bug that caused invalid XML responses for fields |
---|
| 4170 | containing non ASCII chars. (Bertrand Delacretaz via yonik, SOLR-32) |
---|
| 4171 | 7. WordDelimiterFilter can throw exceptions if configured with both |
---|
| 4172 | generate and catenate off. (Mike Klaas via yonik, SOLR-34) |
---|
| 4173 | 8. Escape '>' in XML output (because ]]> is illegal in CharData) |
---|
| 4174 | 9. field boosts weren't being applied and doc boosts were being applied to fields (klaas) |
---|
| 4175 | 10. Multiple-doc update generates well-formed xml (klaas, SOLR-65) |
---|
| 4176 | 11. Better parsing of pingQuery from solrconfig.xml (hossman, SOLR-70) |
---|
| 4177 | 12. Fixed bug with "Distribution" page introduced when Versions were |
---|
| 4178 | added to "Info" page (hossman) |
---|
| 4179 | 13. Fixed HTML escaping issues with user input to analysis.jsp and action.jsp |
---|
| 4180 | (hossman, SOLR-74) |
---|
| 4181 | |
---|
| 4182 | Other Changes |
---|
| 4183 | 1. Upgrade to Lucene 2.0 nightly build 2006-06-22, lucene SVN revision 416224, |
---|
| 4184 | http://svn.apache.org/viewvc/lucene/java/trunk/CHANGES.txt?view=markup&pathrev=416224 |
---|
| 4185 | 2. Modified admin styles to improve display in Internet Explorer (Greg Ludington via billa, SOLR-6) |
---|
| 4186 | 3. Upgrade to Lucene 2.0 nightly build 2006-07-15, lucene SVN revision 422302, |
---|
| 4187 | 4. Included unique key field name/value (if available) in log message of add (billa, SOLR-18) |
---|
| 4188 | 5. Updated to Lucene 2.0 nightly build 2006-09-07, SVN revision 462111 |
---|
| 4189 | 6. Added javascript to catch empty query in admin query forms (Tomislav Nakic-Alfirevic via billa, SOLR-48 |
---|
| 4190 | 7. blackslash escape * in ssh command used in snappuller for zsh compatibility, SOLR-63 |
---|
| 4191 | 8. check solr return code in admin scripts, SOLR-62 |
---|
| 4192 | 9. Updated to Lucene 2.0 nightly build 2006-11-15, SVN revision 475069 |
---|
| 4193 | 10. Removed src/apps containing the legacy "SolrTest" app (hossman, SOLR-3) |
---|
| 4194 | 11. Simplified index.jsp and form.jsp, primarily by removing/hiding XML |
---|
| 4195 | specific params, and adding an option to pick the output type. (hossman) |
---|
| 4196 | 12. Added new numeric build property "specversion" to allow clean |
---|
| 4197 | MANIFEST.MF files (hossman) |
---|
| 4198 | 13. Added Solr/Lucene versions to "Info" page (hossman) |
---|
| 4199 | 14. Explicitly set mime-type of .xsl files in web.xml to |
---|
| 4200 | application/xslt+xml (hossman) |
---|
| 4201 | 15. Config parsing should now work useing DOM Level 2 parsers -- Solr |
---|
| 4202 | previously relied on getTextContent which is a DOM Level 3 addition |
---|
| 4203 | (Alexander Saar via hossman, SOLR-78) |
---|
| 4204 | |
---|
| 4205 | 2006/01/17 Solr open sourced, moves to Apache Incubator |
---|