-
Notifications
You must be signed in to change notification settings - Fork 2.7k
/
CHANGES.txt
18475 lines (12598 loc) · 825 KB
/
CHANGES.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
Apache Solr Release Notes
Introduction
------------
Apache Solr is an open source enterprise search server based on the Apache Lucene Java
search library, with XML/HTTP and JSON APIs, hit highlighting, faceted search,
caching, replication, and a web administration interface.
See http://lucene.apache.org/solr for more information.
Getting Started
---------------
You need a Java 1.8 VM or later installed.
In this release, there is an example Solr server including a bundled
servlet container in the directory named "example".
See the Solr tutorial at https://lucene.apache.org/solr/guide/solr-tutorial.html
================== 9.0.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.19.1
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache ZooKeeper 3.4.13
Jetty 9.4.14.v20181114
Upgrade Notes
----------------------
New Features
----------------------
* SOLR-12121: JWT Token authentication plugin with OpenID Connect implicit flow login through Admin UI (janhoy)
================== 8.0.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.19.1
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache ZooKeeper 3.4.13
Jetty 9.4.14.v20181114
Upgrade Notes
----------------------
* Due to the introduction of LIR redesign since Solr 7.3 (SOLR-11702) and the removing of old LIR implementation in Solr 8.
Rolling updates are not possible unless all nodes must be on Solr 7.3 or higher. If not updates can be lost.
* Solr nodes can now listen and serve HTTP/2 requests. Most of internal requests (sent by UpdateShardHandler, HttpShardHandler)
Http2SolrClient is used. Since by default, internal requests are sent by using HTTP/2,
Solr 8.0 nodes can't talk to old nodes (7.x). However we can follow these steps to do rolling updates:
- Do rolling updates as normally, but the Solr 8.0 nodes must start with -Dsolr.http1=true as startup parameter.
By using this parameter internal requests are sent by using HTTP/1.1
- When all nodes are upgraded to 8.0, restart them, this time -Dsolr.http1 parameter should be removed.
* ALPN is not supported in Java 8 or lower version therefore when a node started in Java 8 or a lower version with SSL enabled,
it will send and can only be able to handle HTTP/1.1 requests. In case of using SSL Java 9 or latter versions are recommended.
* Custom AuthenticationPlugin must provide its own setup for Http2SolrClient through
implementing HttpClientBuilderPlugin.setup, if not internal requests can't be authenticated.
* LUCENE-7996: The 'func' query parser now returns scores that are equal to 0
when a negative value is produced. This change is due to the fact that
Lucene now requires scores to be positive. (Adrien Grand)
* SOLR-11882: SolrMetric registries retained references to SolrCores when closed. A
change of SolrMetricMAnager.registerGauge and SolrMetricProducer.initializeMetrics
method signatures was required to fix it. Third party components that use this API
need to be updated. (Eros Taborelli, Erick Erickson, ab)
* LUCENE-8267: Memory codecs have been removed from the codebase (MemoryPostings,
MemoryDocValues). If you used postingsFormat="Memory" or docValuesFormat="Memory"
then either remove it to use the default or experiment with one of the others. (Dawid Weiss)
* SOLR-12586: The date format patterns used by ParseDateFieldUpdateProcessorFactory (present in "schemaless mode")
are now interpreted by Java 8's java.time.DateTimeFormatter instead of Joda Time. The pattern language is very
similar but not the same. Typically, simply update the pattern by changing an uppercase 'Z' to lowercase 'z' and
that's it. For the current recommended set of patterns in schemaless mode, see "Schemaless Mode" in the ref guide,
or simply examine the default configSet. Also note that the set of patterns (formats) here have
expanded from before to subsume those patterns previously handled by the "extract" contrib (Solr Cell / Tika).
(David Smiley, Bar Rotstein)
* SOLR-12593: The "extraction" contrib (Solr Cell) no longer does any date parsing, and thus no longer has the
"date.formats" configuration. To ensure date strings are properly parsed, use ParseDateFieldUpdateProcessorFactory
(an URP) commonly registered with the name "parse-date" in "schemaless mode". (David Smiley, Bar Rotstein)
* SOLR-12643: Since Http2SolrClient does not support exposing connections related metrics. These metrics are no longer
available 'QUERY.httpShardHandler.{availableConnections, leasedConnections, maxConnections, pendingConnections}',
'UPDATE.updateShardHandler.{availableConnections, leasedConnections, maxConnections, pendingConnections}'
* SOLR-12605: UpdateShardHandler's updateOnlyClient is now a Http2SolrClient (previous HttpSolrClient). This new
client does not support 'maxConnections','maxConnectionsPerHost' parameters.
* SOLR-12640: HttpShardHandlerFactory's defaultClient is now a Http2SolrClient (previous HttpSolrClient). This new
client does not support 'maxConnections','maxConnectionsPerHost' parameters. LBHttpSolrClient.Req and LBHttpSolrClient.Rsp
are marked as deprecated, uses LBSolrClient.Req and LBSolrClient.Rsp instead.
* SOLR-12754: The UnifiedHighlighter hl.weightMatches now defaults to true. If there are unforseen highlight problems,
this may be the culprit.
* If you explicitly use BM25SimilarityFactory in your schema, the absolute scoring will be lower due to SOLR-13025.
But ordering of documents will not change in the normal case. Use LegacyBM25SimilarityFactory if you need to force
the old 6.x/7.x scoring. Note that if you have not specified any similarity in schema or use the default
SchemaSimilarityFactory, then LegacyBM25Similarity is automatically selected for 'luceneMatchVersion' < 8.0.0.
See also explanation in Reference Guide chapter "Other Schema Elements".
* SOLR-12535: Solr no longer accepts index time boosts in JSON provided to Solr. This used to be provided like so:
{'id':'1', 'val_s':{'value':'foo', 'boost':2.0}} but will now produce an error. A object/map structure will now only
be interpreted as a child document or an atomic update; nothing else. A uniqueKey is currently required on all child
documents to be interpreted as such, though this may change in the future. (David Smiley)
* SOLR-12633: When JSON data is sent to Solr with nested child documents split using the "split" parameter, the child
docs will now be associated to their parents by the field/label string used in the JSON instead of anonymously. Most
users probably won't notice the distinction since the label is lost any way unless special fields are in the schema.
This choice used to be toggleable with an internal/expert "anonChildDocs" parameter flag which is now gone.
(David Smiley)
* SOLR-11774: In 'langid' contrib, the LanguageIdentifierUpdateProcessor base class changed some method signatures.
If you have a custom language identifier implementation you will need to adapt your code.
New Features
----------------------
* SOLR-12591: Expand the set of recognized date format patterns of schemaless mode to subsume those handled by the
"extract" contrib (Solr Cell / Tika). This is primarily a change in configuration of the default configSet for more
patterns, but also included enabling "lenient" parsing in ParseDateFieldUpdateProcessorFactory. The default
locale was changed from ROOT to en_US since well-known patterns assume this locale.
(David Smiley, Bar Rotstein)
* SOLR-12879: MinHash query parser that builds queries providing a measure of Jaccard similarity (Andy Hind via Tommaso Teofili)
* SOLR-12593: The default configSet now includes an "ignored_*" dynamic field. (David Smiley)
* SOLR-12799: Allow Authentication Plugins to intercept internode requests on a per-request basis.
The BasicAuth plugin now supports a new parameter 'forwardCredentials', and when set to 'true',
user's BasicAuth credentials will be used instead of PKI for client initiated internode requests. (janhoy, noble)
* SOLR-12791: Add Metrics reporting for AuthenticationPlugin (janhoy)
* SOLR-12730: Implement staggered SPLITSHARD requests in IndexSizeTrigger. (ab)
* SOLR-12639: Umbrella JIRA for adding support HTTP/2 (Cao Manh Dat)
Bug Fixes
----------------------
* SOLR-13058: Fix block that was synchronizing on the wrong collection in OverseerTaskProcessor (Gus Heck)
* SOLR-11774: langid.map.individual now works together with langid.map.keepOrig. Also the detectLanguage() API
is changed to accept a Reader allowing for more memory efficient implementations (janhoy)
Improvements
----------------------
* SOLR-5211: If _root_ is defined in the schema, it is now always populated automatically. This allows documents with
children to be updated with a document that does not have children, whereas before it would break block-join queries.
If you don't use nested documents then _root_ can be removed from the schema. (Dr Oleg Savrasov, Moshe Bla,
David Smiley, Mikhail Khludnev)
* SOLR-6117: The response format has changed slightly for ReplicationHandler error-cases. All errors now have a non-200
'status' field, a 'message' field giving more details on the error, and an optional 'exception' field. (Shalin Mangar,
Jason Gerlowski)
* SOLR-12888: The NestedUpdateProcessor (which populates internal fields for nested child docs) is now auto-registered
to run immediately prior to RunUpdateProcessor. If the schema has no _nest_*_ fields then it's a no-op.
RunUpdateProcessorFactory looks up a special/internal URP chain "_preRun_" which is implicitly defined but could be
defined by an app for customization if desired. (David Smiley)
Optimizations
----------------------
* SOLR-12725: ParseDateFieldUpdateProcessorFactory should reuse ParsePosition. (ab)
* SOLR-13025: Due to LUCENE-8563, the BM25Similarity formula no longer includes the (k1+1) factor in the numerator
This gives a lower absolute score but doesn't affect ordering, as this is a constant factor which is the same
for every document. Use LegacyBM25SimilarityFactory if you need the old 6.x/7.x scoring. See also upgrade notes (janhoy)
* SOLR-13130: during the ResponseBuilder.STAGE_GET_FIELDS directly copy string bytes and avoid creating String Objects (noble)
Other Changes
----------------------
* SOLR-12614: Make "Nodes" view the default in AdminUI "Cloud" tab (janhoy)
* SOLR-12586: Upgrade ParseDateFieldUpdateProcessorFactory (present in "schemaless mode") to use Java 8's
java.time.DateTimeFormatter instead of Joda time (see upgrade notes). "Lenient" is enabled. Removed Joda Time dependency.
(David Smiley, Bar Rotstein)
* SOLR-5163: edismax now throws an exception when qf refers to a nonexistent field (Charles Sanders, David Smiley)
* SOLR-12805: Store previous term (generation) of replica when start recovery process (Cao Manh Dat)
* SOLR-12652: Remove SolrMetricManager.overridableRegistryName method (Peter Somogyi via David Smiley)
* LUCENE-8513: SlowCompositeReaderWrapper now uses MultiTerms directly instead of MultiFields (David Smiley)
* SOLR-11812: Remove backward compatibility of old LIR implementation in 8.0 (Cao Manh Dat)
* SOLR-12620: Remove the Admin UI Cloud -> Graph (Radial) view (janhoy)
* SOLR-12775: LowerCaseTokenizer is deprecated, and should be replaced by LetterTokenizer and
LowerCaseFilter (Alan Woodward)
* SOLR-13036: Fix retry logic in JettySolrRunner (Gus Heck)
* SOLR-12535: Solr no longer accepts index time boosts in JSON provided to Solr. (David Smiley)
* SOLR-13086: Improve the error message reported by DocumentObjectBinder when a setter is not found (Gus Heck)
* SOLR-12365: Renamed class Config to XmlConfigFile (David Smiley)
================== 7.7.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.19.1
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache ZooKeeper 3.4.13
Jetty 9.4.14.v20181114
Upgrade Notes
----------------------
* SOLR-12770: The 'shards' parameter handling logic changes to use a new config element to determine what hosts can be
requested. Please see Apache Solr Reference Guide chapter "Distributed Requests" for details, as well as SOLR-12770.
New Features
----------------------
* SOLR-12839: JSON 'terms' Faceting now supports a 'prelim_sort' option to use when initially selecting
the top ranking buckets, prior to the final 'sort' option used after refinement. (hossman)
* SOLR-7896: Add a login page to Admin UI, with initial support for Basic Auth (janhoy)
* SOLR-13116: Add Admin UI login support for Kerberos (janhoy, Jason Gerlowski)
* SOLR-11126: New Node-level health check handler at /admin/info/healthcheck and /node/health paths that
checks if the node is live, connected to zookeeper and not shutdown. (Anshum Gupta, Amrit Sarkar, shalin)
* SOLR-12770: Make it possible to configure a host whitelist for distributed search
(Christine Poerschke, janhoy, Erick Erickson, Tomás Fernández Löbbe)
* SOLR-12373: Add a "tombstoneConfig" option to DocBasedVersionConstraintsProcessor that allows
users to configure which fields/values to add to tombstone documents. This can be useful to
make sure tombstone documents include fields that are marked as required in the schema
(Tomás Fernández Löbbe)
Bug Fixes
----------------------
* SOLR-12546: CVSResponseWriter omits useDocValuesAsStored=true field when fl=*
(Munendra S N via Mikhail Khludnev)
* SOLR-12933: Fix SolrCloud distributed commit. (Mark Miller)
* SOLR-13014: URI Too Long with large streaming expressions in SolrJ (janhoy)
* SOLR-13066: A failure while reloading a SolrCore can result in the SolrCore not being closed. (Mark Miller)
* SOLR-11296: Spellcheck parameters not working in new UI (Matt Pearce via janhoy)
* SOLR-10975: New Admin UI Query does not URL-encode the query produced in the URL box (janhoy)
* SOLR-13072: Management of markers for nodeLost / nodeAdded events is broken. This bug could have caused
some events to be lost if they coincided with an Overseer leader crash. (ab)
* SOLR-13080: The "terms" QParser's "automaton" method semi-required that the input terms/IDs be sorted. This
query parser now does this. Unclear if this is a perf issue or actual bug. (Daniel Lowe, David Smiley)
* SOLR-13082: A trigger that creates trigger events more frequently than the cool down period can starve other triggers.
This is mitigated to some extent by randomly choosing the trigger to resume after cool down. It is recommended that
scheduled triggers not be used for very frequent operations to avoid this problem.
(ab, shalin)
* SOLR-12514: Rule-base Authorization plugin skips authorization if querying node does not have collection replica (noble)
* SOLR-11853: Solr installer fails on SuSE linux (Markus Mandalka via janhoy)
* SOLR-12237: Fix incorrect SOLR_SSL_KEYSTORE_TYPE variable in solr start script (janhoy, Joel Bernstein)
* SOLR-13053: NodeAddedTrigger and NodeLostTrigger do not reserve added/removed time populated by restoreState
(Cao Manh Dat)
* SOLR-13137: NPE when /admin/zookeeper/status endpoint hit in standalone mode (janhoy)
* SOLR-13091: REBALANCELEADERS is broken (Erick Erickson)
* SOLR-11998: RebalanceLeaders API broken response format with wt=JSON (Erick Erickson)
* SOLR-9735: Fix v2 API for AutoscalingHistoryHandler. (ab)
* SOLR-13168: Fixed a bug in TestInjection that caused test only code to be invoked when TLOG replicas
recieved commits if java assertions were enabled. (hossman)
Improvements
----------------------
* SOLR-12881: Remove unneeded import statements (Peter Somogyi via Erick Erickson)
* SOLR-12992: When using binary format, ExportWriter to directly copy BytesRef instead of
creating new String (noble)
* SOLR-12898: Replace cluster state polling with ZkStateReader#waitFor. (Mark Miller)
* SOLR-12897: Introduce AlreadyClosedException to clean up silly close / shutdown logging. (Mark Miller)
* SOLR-12896: Introduce more checks for shutdown and closed to improve clean close and shutdown. (Mark Miller)
* SOLR-12804: Remove static modifier from Overseer queue access. (Mark Miller)
* SOLR-12833: Add configurable timeout to VersionBucket lock. (Jeffery Yuan, Mark Miller)
* SOLR-12885: BinaryResponseWriter (javabin format) should directly copy from BytesRef to output (noble)
* SOLR-12973: Admin UI "Nodes" view support for replica* replica names. (Daniel Collins, Christine Poerschke, janhoy)
* SOLR-13090: All shipped configurations still have `maxBooleanClauses` default to 1024. But if the
`solr.max.booleanClauses` sysprop is specified, that will override the 1024 default. This enables users to
update this property across the board more easily. (Jason Gerlowski)
* SOLR-12983: JavabinLoader should avoid creating String Objects and create UTF8CharSequence fields from byte[] (noble)
* SOLR-13016: Computing suggestions when policy have "#EQUAL" or "#ALL" rules take too long (noble)
* SOLR-13029: solr.hdfs.buffer.size can be configured for HdfsBackupRepository for better performance (Tim Owen via Mikhail Khludnev)
* SOLR-13156: support facet.sort for facet.field={!terms=foo,bar}field. (Konstantin Perikov via Mikhail Khludnev)
Other Changes
----------------------
* SOLR-12972: deprecate unused SolrIndexConfig.luceneVersion (Christine Poerschke)
* SOLR-12801: Make massive improvements to the tests. (Mark Miller)
* SOLR-12923: The new AutoScaling tests are way too flaky and need special attention. (Mark Miller)
* SOLR-12932: ant test (without badapples=false) should pass easily for developers. (Mark Miller)
* SOLR-13036: Fix retry logic in JettySolrRunner (Gus Heck)
* SOLR-12727: Upgrade ZooKeeper dependency to 3.4.13 (Kevin Risden, Erick Erickson, Cao Manh Dat)
* SOLR-13086: Improve the error message reported by DocumentObjectBinder when a setter is not found (Gus Heck)
================== 7.6.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.19.1
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache ZooKeeper 3.4.11
Jetty 9.4.11.v20180605
Upgrade Notes
----------------------
* SOLR-12767: The min_rf parameter is no longer needed, Solr will always return the achieved replication factor (rf)
in the response header.
* SOLR-12827: The cluster wide defaults structure has changed from {collectionDefaults: {nrtReplicas : 2}} to
{defaults : {collection : {nrtReplicas : 2}}}. The old format continues to be supported and can be read from
ZK as well as written using the V2 set-obj-property syntax but it is deprecated and will be removed in Solr 9.
We recommend that users change their API calls to use the new format going forward.
* SOLR-12739: Autoscaling policy framework is now used as the default strategy to select the nodes on which
new replicas or replicas of new collections are created. Previously, the maxShardsPerNode parameter was not allowed
on collections when autoscaling policy was configured. Also if an autoscaling policy was configured then the default
was to set an unlimited maxShardsPerNode automatically. Now the maxShardsPerNode parameter is always
allowed during collection creation and maxShardsPerNode should be set correctly (if required) regardless of whether
autoscaling policies are in effect or not. The default value of maxShardsPerNode continues to be 1 as before. It can
be set to -1 during collection creation to fall back to the old behavior of unlimited maxShardsPerNode when using
autoscaling policy.
* SOLR-12861: Added a Solr factory for ByteBuffersDirectory, which will replace deprecated RAMDirectory in Solr 9.0.
New Features
----------------------
* SOLR-6280: {!collapse}: if you attempt to use CollapseQParser on a field that is multi-valued, you will now get an
error. Previously, the collapsing behavior was unreliable and undefined despite no explicit error.
(Munendra S N, David Smiley)
* SOLR-9317: ADDREPLICA command should be able to add more than one replica to a collection,shard at a time.
The API now supports 'nrtReplicas', 'tlogReplicas', 'pullReplicas' parameters as well 'createNodeSet' parameter.
As part of this change, the CREATESHARD API now delegates placing replicas entirely to the ADDREPLICA command
and uses the new parameters to add all the replicas in one API call. (shalin)
* SOLR-11522: /autoscaling/suggestions now include rebalance options as well even if there are no violations (noble)
* SOLR-12822: /autoscaling/suggestions to include suggestion to add-replica for lost replicas (noble)
* SOLR-12815: Implement maxOps limit for IndexSizeTrigger. (ab)
* SOLR-12843: Implement a MultiContentWriter in SolrJ to post multiple files/payload at once (noble)
* SOLR-12780: Add support for Leaky ReLU and TanH activations in contrib/ltr NeuralNetworkModel class.
(Kamuela Lau, Christine Poerschke)
* SOLR-12846: Added support for "host" variable in autoscaling policy rules (noble)
* SOLR-5004: Splitshard collections API now supports splitting into more than 2 sub-shards directly i.e. by providing a
numSubShards parameter (Christine Poerschke, Anshum Gupta)
* SOLR-12754: The UnifiedHighlighter has a new hl.weightMatches param defaulting to false (will be true in 8.0). It's
the highest query accuracy mode, and furthermore phrase queries are highlighted as one. (David Smiley)
* SOLR-12828: Add oscillate Stream Evaluator to support sine wave analysis. (Joel Bernstein)
* SOLR-11907: Add convexHull and associated geometric Stream Evaluators. (Joel Bernstein)
* SOLR-12811: Add enclosingDisk and associated geometric Stream Evaluators. (Joel Bernstein)
* SOLR-12840: Add pairSort Stream Evaluator (Joel Bernstein)
* SOLR-12862: Add log10 Stream Evaluator and allow the pow Stream Evaluator to accept a vector of exponents (Joel Bernstein)
* SOLR-12942: Add an option in IndexSizeTrigger to select the split shard method. (ab)
* SOLR-12938: Cluster Status returns results for aliases, instead of throwing exceptions (Gus Heck)
* SOLR-11997: Suggestions API/UI should show an entry where a violation could not be resolved (noble)
* SOLR-12971: Add pivot Stream Evaluator to pivot facet co-occurrence counts into a matrix (Joel Bernstein)
* SOLR-12795: Introduce 'rows' and 'offset' parameter in FacetStream (Joel Bernstein, Amrit Sarkar, Varun Thacker)
* SOLR-11572: Add recip Stream Evaluator to support reciprocal transformations (Joel Bernstein)
* SOLR-12936: Allow percentiles Stream Evaluator to accept an array of percentiles to calculate (Joel bernstein)
* SOLR-12829: Add plist (parallel list) Streaming Expression (Joel Bernstein)
* SOLR-12975: Add ltrim and rtrim Stream Evaluators (Joel Bernstein)
* SOLR-12962: Added a new 'uninvertible' option for fields and fieldtypes. This defaults to 'true' for
backcompat allowing a FieldCache to be built for indexed fields as needed, but users are encouraged
to set this to false (using docValues as needed) to reduce the risk of large fluxuations in heap
size due to unexpected attempts to sort/facet/function on non-docValue fields. (hossman)
Other Changes
----------------------
* SOLR-12762: Fix javadoc for SolrCloudTestCase.clusterShape() method and add a method that validates only against
Active slices (Anshum Gupta)
* SOLR-12756: Refactor Assign and extract replica placement strategies out of it. Now, assignment is done with the help
of a builder class instead of calling a method with large number of arguments. The number of special cases that had
to be handled have been cut down as well. (shalin)
* SOLR-12827: Migrate cluster wide defaults syntax in cluster properties to a nested structure. The structure has
changed from {collectionDefaults: {nrtReplicas : 2}} to {defaults : {collection : {nrtReplicas : 2}}}.
(ab, shalin)
* SOLR-12835: Document statistics exposed by the Query Result Cache when maxRamMB is configured. (shalin)
* SOLR-12423: Upgrade to Tika 1.19.1 when available (Tim Allison via Erick Erickson)
* SOLR-12793: Move TestCloudJSONFacetJoinDomain and TestCloudJSONFacetSKG to the facet test package (Varun Thacker)
* SOLR-12861: Add Solr factory for ByteBuffersDirectory.
* SOLR-12746: Simplify the Ref Guide HTML structure and use semantic HTML tags where possible. Adds new template files
for Asciidoctor HTML conversion. Building the HTML version now requires the Slim gem. (Cassandra Targett)
* SOLR-12956: Add Javadoc @since tag to Analyzer component classes (Alexandre Rafalovitch)
* SOLR-12966: Add Javadoc @since tag to URP classes (Alexandre Rafalovitch)
* SOLR-12600: Fix parameter names in Solr JSON documentation (Alexandre Rafalovitch)
* SOLR-12497: Add documentation to use Hadoop credential provider-based keystore/trustsore.
(Mano Kovacs, Cassandra Targett)
* SOLR-13006: ZkNodeProps to be able to load from both javabin and JSON (noble)
Bug Fixes
----------------------
* SOLR-12803: Ensure ConcurrentUpdateSolrClient sends documents to correct collection (Jason Gerlowski)
* SOLR-11836: FacetStream works with bucketSizeLimit of -1 which will fetch all the buckets.
(Alfonso Muñoz-Pomer Fuentes, Amrit Sarkar via Varun Thacker)
* SOLR-12776: Setting of TMP in solr.cmd causes invisibility of Solr to JDK tools (Petr Bodnar via Erick Erickson)
* SOLR-12648: Autoscaling framework based replica placement is not used unless a policy is specified or
non-empty cluster policy exists. (shalin)
* SOLR-12750: Migrate API should lock the collection instead of shard. (shalin)
* SOLR-12767: When using min_rf, shard leader skipped bad replicas instead of marking them for recovery, this could
create inconsistencies between replicas of the same shard. min_rf parameter is now deprecated, and even if provided
replicas that don't ack an update from the leader will be marked for recovery. (Tomás Fernández Löbbe)
* SOLR-12814: Metrics history causing "HttpParser URI is too large >8192" when many collections (janhoy)
* SOLR-12836: ZkController creates a cloud solr client with no connection or read timeouts. Now the http client
created by the update shard handler is used instead. (shalin)
* SOLR-12729: SplitShardCmd should lock the parent shard to prevent parallel splitting requests. (ab)
* SOLR-12851: Improvements and fixes to let and select Streaming Expressions (Joel Bernstein)
* SOLR-12874: Java 9+ GC Logging filesize parameter should use a unit. (Tim Underwood via Uwe Schindler)
* SOLR-12868: Request forwarding for v2 API is broken (noble)
* SOLR-7557: Fix parsing of child documents using queryAndStreamResponse (Marvin Bredal Lillehaug/Stian Østerhaug via janhoy)
* SOLR-12875: fix ArrayIndexOutOfBoundsException when unique(field) or uniqueBlock(_root_) is
used with DVHASH method in json.facet. (Tim Underwood via Mikhail Khludnev)
* SOLR-12954: fix facet.pivot refinement bugs when using facet.sort=index and facet.mincount>1 (hossman)
* SOLR-12023: Autoscaling policy engine shuffles replicas needlessly (noble)
* SOLR-12243: Edismax missing phrase queries when phrases contain multiterm synonyms
(Elizabeth Haubert, Alessandro Benedetti, Uwe Schindler, Steve Rowe)
* SOLR-12977: Autoscaling tries to fetch metrics from dead nodes (noble)
* SOLR-12978: In autoscaling NPE thrown for nodes where value is absent (noble)
Improvements
----------------------
* SOLR-12767: Solr now always includes in the response of update requests the achieved replication factor
(Tomás Fernández Löbbe)
* SOLR-12782: UninvertingReader wrapping is now a bit more lightweight: Does not create FieldInfo for fields that
can't be uninverted (saves mem) and can avoid wrapping the reader altogether if there's nothing to uninvert.
IndexSchema.getUninversionMap refactored to getUninversionMapper and no longer merges FieldInfos. (David Smiley)
* SOLR-12739: Make autoscaling policy based replica placement the default strategy for placing replicas. (shalin)
* SOLR-12806: use autoscaling policies with strict=false to prioritize node allocation (noble)
* SOLR-10981: Support for stream.url or stream.file pointing to gzipped data. It's detected by either a content
encoding header or file extension. (Andrew Lundgren via David Smiley, Jan Høydahl)
* SOLR-12892: MapWriter to use CharSequence instead of String (noble)
* SOLR-12882: Eliminate excessive lambda allocation in json facets FacetFieldProcessorByHashDV (Tim Underwood)
* SOLR-12699: Make contrib/ltr LTRScoringModel immutable and cache its hashCode.
(Stanislav Livotov, Edward Ribeiro, Christine Poerschke)
* LUCENE-8557: Some internal LeafReader.getFieldInfos implementations were being re-computed on-demand instead of
once up front leading to some slowdowns in places like JSON Facets and field collapsing. (Tim Underwood, David Smiley)
* SOLR-12964: Json Facets: use DocValuesIterator advanceExact() instead of advance() in FacetFieldProcessorByHashDV and
UniqueSinglevaluedSlotAcc. (Tim Underwood)
* SOLR-12880: Json Facets: Show the FacetProcessor class name instead of the FacetRequest in the JSON Facets debug-trace
output (Tim Underwood)
================== 7.5.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.18
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache ZooKeeper 3.4.11
Jetty 9.4.11.v20180605
Upgrade Notes
----------------------
* The data-driven schema no longer returns the *_str field-copy of text fields by default. The *_str field is still
created and can be used for e.g. sorting, but to retrieve it you now need to explicitly list it in "fl" (SOLR-12350)
* LUCENE-7976: TieredMergePolicy now respects maxSegmentSizeMB by default when executing
findForcedMerges (optimize) and findForcedDeletesMerges (expungeDeletes) (Erick Erickson)
* SOLR-12395: SignificantTermsQParserPlugin's name is now 'significantTerms' and its old name 'sigificantTerms' is deprecated.
* SOLR-11694: Extremely outdated UIMA contrib module has been removed (Alexandre Rafalovitch)
* SOLR-12008: The configuration file for log4j2.xml is now in ../server/resources/log4j2.xml. All other copies have been removed.
WINDOWS USERS: This JIRA corrects a bug in the start scripts that put example logs under ...\server, solr.log is
now under ...\example. (Erick Erickson)
* SOLR-12398: The heatmap facet response structure, when returned in JSON, changed from an even/odd name/value array to
an object style. Although the object style makes more sense, this was an overlooked back-compat break; sorry.
New Features
----------------------
* SOLR-11865: The QueryElevationComponent now has a useConfiguredElevatedOrder setting. When multiple docs are elevated,
this specifies whether their relative order should be the order in the configuration file or if not then should they
be subject to whatever the sort criteria is. Additionally, QEC was extensively refactored to be more extensible.
(Bruno Roustant, David Smiley)
* SOLR-12474: Add an UpdateRequest Object that implements RequestWriter.ContentWriter (noble)
* SOLR-12361: Allow nested child documents to be in field values of a SolrInputDocument as an alternative to
add/get ChildDocuments off to the side. The latter is now referred to as "anonymous" child documents as opposed to
"labelled" (by the field name). Anonymous child docs might be deprecated in the future. This is an internal change
that should work for javabin/SolrJ; separate issues will address XML & JSON formats populating nested docs in this way.
AddUpdateCommand and it's relationship with DirectUpdateHandler2 was reworked substantially. (Moshe Bla, David Smiley)
* SOLR-12362: Uploading docs in JSON now supports child documents as field values, thus providing a label to the
relationship instead of the current "anonymous" relationship. Use of this experimental feature sometimes requires a
anonChildDocs=false parameter until Solr 8 due to syntax ambiguities. (Moshe Bla, David Smiley)
* SOLR-12485: Uploading docs in XML now supports child documents as field values, thus providing a label to the
relationship instead of the current "anonymous" relationship. (Moshe Bla, David Smiley)
* SOLR-12441: (EXPERIMENTAL) New NestedUpdateProcessorFactory (URP) to populate special fields _nest_parent_ and
_nest_path_ of nested (child) documents. It will generate a uniqueKey of nested docs if they were blank too.
(Moshe Bla, David Smiley)
* SOLR-12519: The [child] transformer now returns a nested child doc structure (attached as fields if provided this way)
provided the schema has the _nest_path_ field. This is part of a broader enhancement of nested docs.
(Moshe Bla, David Smiley)
* SOLR-12722: The [child] transformer now takes an 'fl' param to specify which fields to return. It will evaluate
doc transformers if present. In 7.5 a missing 'fl' defaults to the current behavior of all fields, but in 8.0
defaults to the top/request "fl". (Moshe Bla, David Smiley)
* SOLR-11578: Solr 7 Admin UI (Cloud > Graph) should reflect the Replica type to give a more accurate representation
of the cluster. (Rhoit Singh via Erick Erickson)
* SOLR-12507: Modify collection API should support un-setting properties. (shalin)
* SOLR-12506: Add SolrJ support for the modify collection API. (shalin)
* SOLR-12398: The JSON Facet API now supports type=heatmap facets, just as classic faceting does. (David Smiley)
* SOLR-11985: Support percentage values in replica attribute in autoscaling policy (noble)
* SOLR-12511: Support non integer values for replica in autoscaling policy (noble)
* SOLR-12517: Support range values for replica in autoscaling policy (noble)
* SOLR-12530: Ability to disable configset upload via -Dconfigset.upload.enabled=false startup parameter
(Ishan Chattopadhyaya)
* SOLR-12495: An #EQUAL function for replica in autoscaling policy to equally distribute replicas (noble)
* SOLR-11986: Allow percentage in freedisk attribute in autoscaling policy rules (noble)
* SOLR-12522: Support a runtime function `#ALL` for 'replica' in autoscaling policies (noble)
* SOLR-12567: JSON Facet "functions" now support an extended "type:func" syntax, similar to other types
of facets. This also allows additional local params to be specified for if the aggregation function
can take advantage of them. (hossman)
* SOLR-12581: the JSON Facet 'relatedness()' aggregate function now supports a 'min_popularity' option
using the extended type:func syntax (hossman)
* SOLR-12536: autoscaling policy support to equally distribute replicas on the basis of arbitrary properties (noble)
* SOLR-8207: Add "Nodes" view to the Admin UI "Cloud" tab, listing nodes and key metrics (janhoy)
* SOLR-7767: "ZK Status" sub menu under "Cloud" tab to see status of zookeeper ensemble (janhoy)
* SOLR-11990: Make it possible to co-locate replicas of multiple collections together in a node. A collection may be
co-located with another collection during collection creation time by specifying a 'withCollection' parameter. It can
also be co-located afterwards by using the modify collection API. The co-location guarantee is enforced regardless of
future cluster operations whether they are invoked manually via the Collection API or by the Autoscaling framework.
(noble, shalin)
* SOLR-12402: Factor out SolrDefaultStreamFactory class. (Christine Poerschke)
* SOLR-12592: support #EQUAL function, range operator, decimal and percentage in cores in autoscaling policies (noble)
* SOLR-12655: Add Korean morphological analyzer ("nori") to default distribution. This also adds examples
for configuration in Solr's schema. (Uwe Schindler)
* SOLR-11863: Add knnRegress Stream Evaluator to support nearest neighbor regression (Joel Bernstein)
* SOLR-12702: Add zscores Stream Evaluator (Joel Bernstein)
* SOLR-12687: Add functions to cache data structures and mathematical models (Joel Bernstein)
* SOLR-12671: Add robust flag to knnRegress Stream Evaluator (Joel Bernstein)
* SOLR-12660: Add outliers Stream Evaluator to support outlier detection with probability distributions
(Joel Bernstein)
* SOLR-12634: Add gaussfit Stream Evaluator (Joel Bernstein)
* SOLR-12629: The predict evaluator should work with the polyfit function (Joel Bernstein)
* SOLR-12715: NodeAddedTrigger should support adding replicas to new nodes by setting preferredOperation=addreplica.
(shalin)
* SOLR-11861: When creating a configSet via the API, the "baseConfigSet" parameter now defaults to "_default".
(Amrit Sarkar, David Smiley)
* SOLR-12716: NodeLostTrigger should support deleting replicas from lost nodes by setting preferredOperation=deletenode.
(shalin)
* SOLR-9418: Added a new (experimental) PhrasesIdentificationComponent for identifying potential phrases
in query input based on overlapping shingles in the index. (Akash Mehta, Trey Grainger, hossman)
* SOLR-11943: Add machine learning functions for location data (Joel Bernstein)
* SOLR-12612: Cluster properties restriction of known keys only is relaxed, and now unknown properties starting with "ext."
will be allowed. This allows custom to plugins set their own cluster properties. (Jeffery Yuan via Tomás Fernández Löbbe)
* SOLR-12357: Time Routed Aliases now have a preemptiveCreateMath option to preemptively and asynchronously create the
next collection in advance as new data gets within this time window of the end. (Gus Heck, David Smiley)
Bug Fixes
----------------------
* SOLR-12449: Response /autoscaling/diagnostics shows improper json (noble)
* SOLR-11676: Keep nrtReplicas and replicationFactor in sync while creating a collection and modifying a collection
(Varun Thacker)
* SOLR-12489: User specified replicationFactor and maxShardsPerNode is used when specified during a restore operation.
A user can now specify nrtReplicas/tlogReplicas/pullReplicas while restoring the collection.
Specifying replicationFactor or nrtReplicas have the same effect and only one can be specified (Varun Thacker)
* SOLR-11216: Race condition in PeerSync (Cao Manh Dat)
* SOLR-11807: Restoring collection now treats maxShardsPerNode=-1 as unlimited (Varun Thacker)
* SOLR-12413: If Zookeeper was pre-loaded with data before first-use, then the aliases information would be ignored.
(David Smiley, Gaël Jourdan, Gus Heck)
* SOLR-12482: Config API returns status 0 for failed operations. (Steve Rowe)
* SOLR-12513: Reproducing TestCodecSupport.testMixedCompressionMode failure (Erick Erickson)
* SOLR-11665: Improve error handling of shard splitting. Fix splitting of mixed replica types. (ab)
* SOLR-12326: JSON Facet API: terms facet shard requests now indicate if they have more buckets to prevent
unnecessary refinement requests. (yonk)
* SOLR-12427: Improve error message for invalid 'start', 'rows' parameters. (Munendra S N via Jason Gerlowski)
* SOLR-12395: Make 'significantTerms' the SignificantTermsQParserPlugin's name and deprecate its old 'sigificantTerms' name.
(Tobias Kässmann, Christine Poerschke)
* SOLR-12533 Collection collection fails if metrics are called during core creation (Peter Cseh, Mano Kovacs)
* SOLR-2834: Fix SolrJ Field and Document analyzes for types that include CharacterFilter (Alexandre Rafalovitch)
* SOLR-12516: Fix some bugs in 'type:range' Facet refinement when sub-facets are combined with non
default values for the 'other' and 'include' options. (hossman)
* SOLR-12343: Fixed a bug in JSON Faceting that could cause incorrect counts/stats when using non default
sort options. This also adds a new configurable "overrefine" option. (Yonik Seeley, hossman)
* SOLR-12553: Allow SignificantTerms Query Parser to use local parameters (Alexandre Rafalovitch)
* SOLR-12570: OpenNLPExtractNamedEntitiesUpdateProcessor cannot support multi fields because pattern replacement
doesn't work correctly. (Koji Sekiguchi)
* SOLR-12576: Update ref guide for additional information displayed in cloud view (Erick Erickson)
* SOLR-12597: Migrate API should fail requests that do not specify split.key parameter (shalin)
* SOLR-12477: An update would return a client error(400) if it hit a AlreadyClosedException.
We now return the error as a server error(500) instead (Jeffery via Varun Thacker)
* SOLR-12606: Fix InfixSuggestersTest.testShutdownDuringBuild() failures. (Steve Rowe)
* SOLR-12607: Fixed two separate bugs in shard splits which can cause data loss. The first case is when using TLOG
replicas only, the updates forwarded from parent shard leader to the sub-shard leader are written only in tlog and
not the index. If this happens after the buffered updates have been replayed then the updates can never be executed
even though they remain the transaction log. The second case is when synchronously forwarding updates to sub-shard
leader fails and the underlying errors are not propagated to the client. (Cao Manh Dat, shalin)
* SOLR-12344: SolrSlf4jReporter doesn't set MDC context. (ab)
* SOLR-12594: MetricsHistoryHandler.getOverseerLeader fails when hostname contains hyphen. (ab)
* SOLR-12615: HashQParserPlugin will no longer throw an NPE if the hash key field is a string when there are documents
with empty values. All documents with empty values ( string , numeric ) will be processed by worker=0
This would fix the NPE when using the search stream with partitionKeys. (Varun Thacker)
* SOLR-11770: NPE in tvrh if no field is specified and document doesn't contain any fields with term vectors
* SOLR-12541: Metrics handler throws an error if there are transient cores. (ab)
* SOLR-12470: Search Rate Trigger multiple bug fixes, improvements and documentation updates. (ab)
* SOLR-12665: Autoscaling policy not being refreshed due to caching (noble)
* SOLR-12649: CloudSolrClient retries requests unnecessarily exception from server (noble, shalin)
* SOLR-12670: RecoveryStrategy logs wrong wait time when retrying recovery. (shalin)
* SOLR-12668: Autoscaling trigger listeners should be executed in the order of their creation. (ab)
* SOLR-12475: Fix MaxSizeAutoCommitTest failures (Rupa Shankar, Anshum Gupta)
* SOLR-12674: RollupStream should not use the HashQueryParser for 1 worker. (Varun Thacker)
* SOLR-12679: MiniSolrCloudCluster internal jetty list should never have duplicates (shalin)
* SOLR-12598: Do not fetch non-stored fields (Nikolay Khitrin, Erick Erickson)
* SOLR-12683: HashQuery will throw an exception if more than 4 partitionKeys is specified.
Earlier after the 4th partitionKey the keys would be silently ignored. (Varun Thacker)
* SOLR-10028: Fix and improvements to SegmentsInfoRequestHandlerTest (Christine Poerschke, Tomás Fernández Löbbe)
* SOLR-11585: Solr SQL does not work with point numeric fields (Joel Bernstein, Kiran Chitturi)
* SOLR-12704: Guard AddSchemaFieldsUpdateProcessorFactory against null field names and field values.
(Steve Rowe, Varun Thacker)
* SOLR-12733: SolrMetricReporterTest failure (Erick Erickson, David Smiley)
* SOLR-12765: Incorrect format of JMX cache stats. (Bojan Smid, ab)
* SOLR-12749: timeseries() expression missing sum() results for empty buckets (Joel Bernstein)
Optimizations
----------------------
* SOLR-12350: Do not use docValues as stored for _str (copy)fields in _default configset (janhoy)
* SOLR-12455: Refactor JSON serialization code into SolrJ package (noble)
* SOLR-11654: Time Routed Alias will now route documents to the ideal shard of a collection, thus avoiding a hop.
Usually documents were already routed well but not always. (Gus Heck, David Smiley)
* SOLR-11598: The export handler does not limit users to 4 sort fields and is now unlimited. However the speed at
which we can export is directly proportional to the number of sort fields specified. This change also allows streaming
expressions to group by on more than 4 fields. (Aroop Ganguly, Amrit Sarkar, Varun Thacker)
* SOLR-12305: When a replica is applying updates, some kind of updates can skip buffering for faster recovery.
(Cao Manh Dat)
* SOLR-12509: Improve SplitShardCmd performance and reliability. A new method of splitting has been
introduced (splitMethod=link) which uses hard-linking of index files when possible, resulting in
significant speedups and reduced CPU / IO load on shard leader. (ab)
* SOLR-11881: Retry update requests sent by leaders to it's followers (Varun Thacker, Mark Miller, Tomás Fernández Löbbe)
* SOLR-12616: Optimize Export writer upto 4 sort fields to get better performance.
This was removed in SOLR-11598 but brought back in the same version (Amrit Sarkar, Varun Thacker)
* SOLR-12572: While exporting documents using the export writer, if a field is specified as a sort parameter and also
in the fl (field list) parameter, we save on one doc-value lookup. This can bring performance improvements of 15%
and upwards depending on how many fields are in common. (Amrit Sarkar, Varun Thacker)
* SOLR-10697: HttpShardHandler now uses a default of 100k as maxConnections (10k previously) and default
maxConnectionsPerHost as 100k (20 previously). They are now consisent with the UpdateShardHandler defaults.
(Varun Thacker)
* SOLR-12723: Reduce object creation in HashBasedRouter. (ab)
* SOLR-12766: When retrying internal requests, backoff only once for the full batch of retries (Tomás Fernández Löbbe)
Other Changes
----------------------
* SOLR-12208: Renamed the autoscaling variable 'INDEX.sizeInBytes' to 'INDEX.sizeInGB' (noble)
* SOLR-12523: Improve error reporting and docs regarding Collection backup feature shared-fs requirement (janhoy)
* SOLR-12468: Upgrade Jetty to 9.4.11.v20180605 (Michael Braun, shalin)
* SOLR-12527: factor out a test-framework/ConfigRequest class (Christine Poerschke)
* SOLR-12412: Leader should give up leadership when IndexWriter.tragedy occur (Cao Manh Dat, Tomas Fernandez-Lobbe)
* SOLR-12551: Upgrade to Tika 1.18 (Tim Allison via Erick Erickson)
* SOLR-12464: Reduce Overseer.close() logging (for non-Overseer leaders) (Christine Poerschke)
* SOLR-12454: Tweak Overseer leadership transition related logging for easier troubleshooting. (Christine Poerschke)
* SOLR-12574: Put under a common "significantTerms" bucket all output by SignificantTerms Query Parser (Alexandre Rafalovitch)
* SOLR-12164: Improve Ref Guide main landing page. (Cassandra Targett)
* SOLR-10984: Clean up web.xml, removing old redirects and outdated comments (Varun Thacker, janhoy)
* SOLR-12617: Remove Commons BeanUtils as a dependency (Varun Thacker)
* SOLR-11008: Use a lighter config for MetricsHandlerTest and ensure the core is up before the test starts (Varun Thacker)
* SOLR-11766: Move Streaming Expressions section in Ref Guide to be a top-level section. (Cassandra Targett)
* SOLR-12656: ShardSplitTest should extend AbstractFullDistribZkTestBase instead of BasicDistributedZkTest. (shalin)
* LUCENE-8456: Upgrade Apache Commons Compress to v1.18 (Steve Rowe)
* SOLR-12014: Cryptic error message when creating a collection with sharding that violates autoscaling policies (noble)
* SOLR-12680: Fix ClassCastException and AIOOBE in TestSolrConfigHandlerConcurrent. (shalin)
* SOLR-12675: Make LeaderVoteWaitTimeoutTest more resilient against side effects of test methods. (shalin)
* SOLR-12130: CdcrReplicationDistributedZkTest is broken into two test classes, CdcrOpsAndBoundariesTest which does
not require node restarts and CdcrWithNodesRestartsTest which does. The tests themselves are made faster and more
resilient to spurious failures. (Varun Thacker, Amrit Sarkar via shalin)
* SOLR-12625: Combine SolrDocumentFetcher and RetrieveFieldsOptimizer (Erick Erickson)
* SOLR-12690: Regularize LoggerFactory declarations (Erick Erickson)
* SOLR-12590: Improve Solr resource loader coverage in the ref guide.
(Steve Rowe, Cassandra Targett, Christine Poerschke)
* SOLR-12744: Improve logging messages and verbosity around recoveries (Cao Manh Dat, Varun Thacker)
* SOLR-8742: In HdfsDirectoryTest replace RAMDirectory usages with ByteBuffersDirectory.
(hossman, Mark Miller, Andrzej Bialecki, Steve Rowe)
* SOLR-12771: Improve Autoscaling Policy and Preferences documentation. (hossman, Steve Rowe)
================== 7.4.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
Versions of Major Components
---------------------
Apache Tika 1.17
Carrot2 3.16.0
Velocity 1.7 and Velocity Tools 2.0
Apache UIMA 2.3.1
Apache ZooKeeper 3.4.11
Jetty 9.4.10.v20180503
Upgrade Notes
----------------------
* SOLR-7887: Solr now uses Log4J 2.11 . The log4j configuration is now in log4j2.xml rather than log4j.properties files.
This is a server side change only and clients using SolrJ won't need any changes. Clients can still use any logging
implementation which is compatible with SLF4J. We now let log4j2 handle rotation of solr logs at startup, and bin/solr
start scripts will no longer attempt this nor move existing console or GC logs into logs/archived either (SOLR-12144).
* SOLR-11673: Slave doesn't commit empty index when completely new index is detected on master during replication.
To return the previous behavior pass false to skipCommitOnMasterVersionZero in slave section of replication
handler configuration, or pass it to the fetchindex command.
* SOLR-11453: Configuring slowQueryThresholdMillis now logs slow requests to a separate file - solr_slow_requests.log.
Previously they would get logged in the solr.log file.
New Features
----------------------
* SOLR-12396: Upgrade Carrot2 to 3.16.0, HPPC to 0.8.1, morfologik to 2.1.5. (Dawid Weiss)
* SOLR-11200: A new CMS config option 'ioThrottle' to manually enable/disable
ConcurrentMergeSchedule.doAutoIOThrottle. (Amrit Sarkar, Nawab Zada Asad iqbal via Dawid Weiss)
* SOLR-11670: Implement a periodic house-keeping task. This uses a scheduled autoscaling trigger and
currently performs cleanup of old inactive shards. (ab, shalin)
* SOLR-12015: Add support "add-distinct" in AtomicURP so that we can use the 'add-distict' as a request parameter e.g:
atomic.<multival-field-name>=add-distict (Amrit Sarkar via noble)
* SOLR-7887: Upgrade Solr to use Log4J 2.11
(Tim Potter, Keith Laban, Shawn Heisey, Ralph Goers, Erick Erickson, Varun Thacker)
* SOLR-12139: The "eq" (equals) function query now works with string fields, string literals, and perhaps anything.
(Andrey Kudryavtsev, David Smiley)
* SOLR-10783: Add support for Hadoop Credential Provider as SSL/TLS store password source.
(Mano Kovacs via Mark Miller)
* SOLR-12036: Factor out DefaultStreamFactory solrj class. (Christine Poerschke)
* SOLR-12151: Add abstract MultiSolrCloudTestCase class. (Christine Poerschke)
* SOLR-12181: Add index size autoscaling trigger, based on document count or size in bytes. (ab)
* SOLR-11982: Add possibility to define replica order with the shards.preference parameter to e.g. prefer PULL replicas
for distributed queries. (Ere Maijala, Tomás Fernández Löbbe)
* SOLR-11336: DocBasedVersionConstraintsProcessorFactory is more extensible and now supports a list of versioned fields.
(versionField config may now be a comma-delimited list). (Michael Braun via David Smiley)
* SOLR-11913: SolrJ SolrParams now implements Iterable<Map.Entry<String, String[]>> and also has a stream() method
using it for convenience. (David Smiley, Tapan Vaishnav)
* SOLR-11924: Added the ability to listen to changes in the set of active collections in a cloud