This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch branch_10_1
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/branch_10_1 by this push:
new ee956454b93 Update CHANGELOG.
ee956454b93 is described below
commit ee956454b93750b0d4b07f234609376583ec7f38
Author: Andrzej Białecki <[email protected]>
AuthorDate: Tue Oct 6 13:02:53 2026 +0200
Update CHANGELOG.
---
CHANGELOG.md | 26 +++++++++++++++++-----
...sedversionconstraints-reject-native-version.yml | 0
.../PR#4977-update-jackson-woodstox.yml | 0
.../PR#4978-update-com-squareup-okio-okio.yml | 0
.../PR#4980-update-grpc-and-netty.yml | 0
.../PR#4981-update-logging-to-v2-0-20.yml | 0
.../PR#4984-update-admin-ui.yml | 0
...ate-org-apache-calcite-avatica-avatica-core.yml | 0
.../PR#4987-update-google-cloud.yml | 0
.../SOLR-16396-config-get.yml | 0
changelog/{unreleased => v10.1.0}/SOLR-16458.yml | 0
.../SOLR-17432-otel-java-agent.yml | 0
changelog/{unreleased => v10.1.0}/SOLR-18277.yml | 0
changelog/{unreleased => v10.1.0}/SOLR-18317.yml | 0
...18321-delete-collection-configset-if-unused.yml | 0
.../SOLR-18324-jersey-null-request-npe.yml | 0
changelog/{unreleased => v10.1.0}/SOLR-8291.yml | 0
changelog/v10.1.0/version-summary.md | 26 +++++++++++++++++-----
18 files changed, 42 insertions(+), 10 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 52f37f7c584..0a00a7db70a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,7 +19,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- A `filecontent` request to `/solr/{core}/replication` with `dirType=cf` or
`dirType=tlogFile` must name a file that resolves inside the core's config or
tlog directory; otherwise it is rejected.
- In SolrCloud, a request served by a core on the receiving node is authorized
against that core's collection, regardless of the `collection` request
parameter. Requests the core sends on to other collections, such as a
distributed search over several collections or an alias, are authorized by the
nodes that receive them, against their own collections. For example, a search
sent to a core of collection `A` with `collection=B` needs read permission on
both `A` and `B`.
-### Added (64 changes)
+### Added (65 changes)
- New SolrJ CollectionScopedSolrClient
[PR#4418](https://github.com/apache/solr/pull/4418) (David Smiley)
- Add V2 "System Info" API and SolrJ request 'SystemApi.GetNodeSystemInfo'
[PR#4078](https://github.com/apache/solr/pull/4078) (Isabelle Giguère)
@@ -34,6 +34,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Add ConfigSets.Download and ConfigSets.GetFile to SolrJ
[SOLR-15701](https://issues.apache.org/jira/browse/SOLR-15701) (Eric Pugh)
- SolrJ now offers a SolrRequest class allowing users to perform v2
single-node healthchecks: NodeApi.Healthcheck
[SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Eric Pugh)
(Jason Gerlowski)
- A single node system property can be fetched at GET
/api/node/properties/{propertyName} (v1 still uses ?name=). SolrJ now provides
NodeApi.GetNodeProperties and NodeApi.GetNodeProperty.
[SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Prithvi S
@iprithv)
+- SolrJ now offers a `SystemApi.GetThreadDump` SolrRequest class for fetching
thread dumps from a single Solr node through the JAX-RS `/api/node/threads`
API. [SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Yash
Goswami)
- Introduce new SolrJ SolrRequest classes for metrics and "system info"
requests. [SOLR-17136](https://issues.apache.org/jira/browse/SOLR-17136)
(Isabelle Giguère) (Pierre Salagnac)
- Support block / nested-docs with index sorting
[SOLR-17170](https://issues.apache.org/jira/browse/SOLR-17170) (David Smiley)
- SolrJ's QueryResponse and other response objects can now read a JSON
response, via the new `CanonicalJsonResponseParser`..
[SOLR-17316](https://issues.apache.org/jira/browse/SOLR-17316) (Serhiy
Bzhezytskyy)
@@ -53,7 +54,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Add top-level "queries" support to JsonQueryRequest in SolrJ
[SOLR-18093](https://issues.apache.org/jira/browse/SOLR-18093) (Sonu Sharma
@ercsonusharma)
- Provide NoOpRequestWriter and NoOpRequestHandler that can be used to disable
implicitly configured equivalents.
[SOLR-18095](https://issues.apache.org/jira/browse/SOLR-18095) (Eric Pugh)
- CoreAdmin API (/admin/cores?action=UPGRADECOREINDEX) to upgrade an index
in-place [SOLR-18096](https://issues.apache.org/jira/browse/SOLR-18096) (Rahul
Goswami)
-- Script creating a cluster using bin/solr start -e cloud with --prompt-inputs
option. [SOLR-18118](https://issues.apache.org/jira/browse/SOLR-18118) (Eric
Pugh) (Rahul Goswami)
+- Script creating a cluster using bin/solr start -e cloud with --script-inputs
option. [SOLR-18118](https://issues.apache.org/jira/browse/SOLR-18118) (Eric
Pugh) (Rahul Goswami)
- Add --solr-connection option to Solr CLI tools, enabling HTTP(S)-based
communication without requiring direct ZooKeeper access
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
- Add HTTP(S)-based SolrCloud connection support for the Solr SQL JDBC driver
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
- Add 'solrConnection' parameter to cross-collection joins in the Join Query
Parser, expanding use to HTTP based SolrCloud coordinates.
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
@@ -86,7 +87,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- CrossDC Consumer: add /health endpoint
[SOLR-18061](https://issues.apache.org/jira/browse/SOLR-18061) (Andrzej
Bialecki @ab)
- ConcurrentUpdateSolrClient can now report which documents failed to reach
the server. Register a handler via the Builder's withErrorHandler(...) to
recover the documents of a failed batch, for example to route them to a retry
queue or dead-letter topic.
[SOLR-3284](https://issues.apache.org/jira/browse/SOLR-3284) (Serhiy
Bzhezytskyy)
-### Changed (48 changes)
+### Changed (52 changes)
- Dropdowns for collection/core, for fields on the schema-page and for
field-types on the analyze page are now using a contains-filtering
[GITHUB#4121](https://github.com/apache/solr/pull/4121) (Renato Haeberli)
- Refactor of the language-model module to accomodate new upcoming LLM
oriented features avoiding code duplication.
[PR#4375](https://github.com/apache/solr/pull/4375) (Nicolò Rinaldi) (Anna
Ruggero) (Alessandro benedetti)
@@ -96,9 +97,12 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- HttpJettySolrClient defaults would often create 32 threads, likely
under-utilizing them. and it would cap threads to 256. Now it does neither by
default but Executor customization (and other saturation controls) remain.
[PR#4668](https://github.com/apache/solr/pull/4668) (David Smiley)
- Distributed tracing and audit logging now see request parameters sent in a
url-encoded POST body, not only those in the URL query string.
[PR#4870](https://github.com/apache/solr/pull/4870) (David Smiley) (Xinyao
Zhang)
- HttpSolrClient impls now sends certain interesting request parameters in the
URL query string when a POST of parameters is submitted. In other words,
withTheseParamNamesInTheUrl now has a default set. This improves observability,
particularly for distributed search & admin commands.
[PR#4871](https://github.com/apache/solr/pull/4871) (David Smiley)
+- DocBasedVersionConstraintsProcessor now rejects a client-supplied _version_
with a 400 instead of silently ignoring it. And it no longer validates the
tombstone document shape when deleteVersionParam isn't configured
[PR#4877](https://github.com/apache/solr/pull/4877) (David Smiley)
- Parallelize Backup and Restore File Operations
[SOLR-1092](https://issues.apache.org/jira/browse/SOLR-1092) (Samuel Verstraete
@elangelo) (David Smiley @dsmiley)
- v2 cluster command-status APIs are now more REST-ful at GET/DELETE
/api/cluster/commands/{id} and DELETE /api/cluster/commands (the previous
/api/cluster/command-status paths are gone). SolrJ provides
ClusterApi.GetClusterCommandStatus, ClusterApi.DeleteClusterCommandStatus, and
ClusterApi.DeleteAllClusterCommandStatuses.
[SOLR-16390](https://issues.apache.org/jira/browse/SOLR-16390) (Prithvi S
@iprithv)
+- Migration of Get Config V2 API to JAX-RS construct. Note one response-shape
difference from V1 - a plugin's unnamed child elements (e.g. anonymous
`processor` entries under an `updateRequestProcessorChain`) are now grouped
under a `children` key in the V2 JSON response, instead of V1's legacy
empty-string (`""`) key.
[SOLR-16396](https://issues.apache.org/jira/browse/SOLR-16396) (Jalaz Kumar
@jaykay12) (Eric Pugh @epugh)
- VersionTool (bin/solr version) now reports remote server version when
`--solr-url` is provided
[SOLR-17318](https://issues.apache.org/jira/browse/SOLR-17318) ([Jan
Høydahl](https://home.apache.org/phonebook.html?uid=janhoy))
+- Solr now detects a loaded OpenTelemetry Java agent and uses the
OpenTelemetry it registered, with no need for a <tracerConfig> in solr.xml or
the opentelemetry module. OpenTelemetryConfigurator subclasses should now
implement createOpenTelemetry() and not set GlobalOpenTelemetry themselves;
getTracer()/getOpenTelemetrySdk() are deprecated.
[SOLR-17432](https://issues.apache.org/jira/browse/SOLR-17432) (David Smiley)
- QueryRequest.java in SolrJ no longer sends the 'qt' parameter to the server.
[SOLR-17715](https://issues.apache.org/jira/browse/SOLR-17715)
[PR#4397](https://github.com/apache/solr/pull/4397) (r4mercur @r4mercur)
- HttpJdkSolrClient & HttpJettySolrClient now send headers that enable Solr's
rate limiting to work.
[SOLR-17810](https://issues.apache.org/jira/browse/SOLR-17810) (David Smiley)
(Gaurav Tuli)
- Improved multiThreaded=true performance when a docset is needed (e.g.
faceting). [SOLR-17841](https://issues.apache.org/jira/browse/SOLR-17841)
(Puneet Ahuja @punAhuja)
@@ -123,6 +127,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Optimize collapse performance for String fields in Solr 9.x and later
[SOLR-18304](https://issues.apache.org/jira/browse/SOLR-18304) (Bartosz
Fidrysiak)
- Optimize IndexSchema.getDynamicFieldType() by checking cached fields before
matching dynamic patterns.
[SOLR-18306](https://issues.apache.org/jira/browse/SOLR-18306) (Pierre Salagnac)
- Solr's 404 page is less generic. We now log 404s in Solr's log.
[SOLR-18319](https://issues.apache.org/jira/browse/SOLR-18319) (David Smiley)
+- bin/solr delete no longer requires a direct ZooKeeper connection to safely
delete a collection's configset; it now uses the Configsets V2 API instead,
relying on the API's existing unconditional refusal to delete a configset
that's still in use by another collection. The delete tool's -f/--force flag is
deprecated and no longer has any effect -- it never actually bypassed that
in-use check; it's kept only as a no-op for backward compatibility with
existing scripts. [SOLR-18321](https:/ [...]
- HttpJettySolrClient: detect if request wasn't sent; means retry-able.
CloudSolrClient & LBSolrClient will detect it.
[SOLR-18401](https://issues.apache.org/jira/browse/SOLR-18401) (David Smiley)
- Leader/follower replication now restarts with the latest index generation
when the selected generation expires during download, avoiding retries against
an unavailable generation.
[SOLR-18406](https://issues.apache.org/jira/browse/SOLR-18406) (ZhenyuLi
@JHSUYU)
- Simplify PingRequestHandler shard handling
[SOLR-18419](https://issues.apache.org/jira/browse/SOLR-18419) (Jan Høydahl)
@@ -137,7 +142,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- SolrJ v1 admin requests now use appropriate HTTP verbs -- mostly POST, some
GET [SOLR-18343](https://issues.apache.org/jira/browse/SOLR-18343) (Xinyao
Zhang)
- CrossDC Common optimize serialization for large docs
[SOLR-18415](https://issues.apache.org/jira/browse/SOLR-18415) (Andrzej
Bialecki)
-### Fixed (86 changes)
+### Fixed (90 changes)
- Fix getFirstLiveDoc so it returns the first live doc. Previously it would
often return nothing resulting in missing index flags in /admin/luke response.
[SOLR-18125](https://issues.apache.org/jira/browse/SOLR-18125) (Luke
Kot-Zaniewski)
- using window.location.origin rather than hard coded URL
[PR#4281](https://github.com/apache/solr/pull/4281) (Renato Haeberli)
@@ -185,11 +190,14 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Fix several concurrency bugs in HttpShardHandler / ParallelHttpShardHandler
that could cause search threads to hang in take() or return HTTP 500 instead of
honoring shards.tolerant under thread-pool saturation
[SOLR-18244](https://issues.apache.org/jira/browse/SOLR-18244) (Mark Miller)
- Solr Admin UI properly supports multiple facet.field parameters
[SOLR-18246](https://issues.apache.org/jira/browse/SOLR-18246) (Umut Saribiyik)
- CertAuthPlugin now uses correct Jetty attribute for certificate lookup for
SSL authentication
[SOLR-18270](https://issues.apache.org/jira/browse/SOLR-18270) (Jean-Marie
HEITZ @heitzjm)
+- Restore the parent shard to ACTIVE after a failed split even if cluster
state is stale. [SOLR-18277](https://issues.apache.org/jira/browse/SOLR-18277)
(Nick Shanin)
- LoadAverageCircuitBreaker now caches its sampled value for a short TTL, so
it stops re-polling the OS load average per request at high RPS.
[SOLR-18284](https://issues.apache.org/jira/browse/SOLR-18284) (Mark Robert
Miller)
- MemoryCircuitBreaker now measures post-GC live heap data, so it no longer
trips when the heap is full of collectible garbage. Earlier versions sampled
MemoryMXBean.getHeapMemoryUsage().getUsed() on a 30-second moving average (6
samples), which trends toward max between collections during normal operation;
if you tuned a threshold against that behavior you may need to revisit it. This
breaks subclasses of MemoryCircuitBreaker: the deprecated
MemoryCircuitBreaker(int, int) constructor is [...]
- ZkController no longer treats every ZooKeeper reconnect as session
expiration. Re-election and core re-registration now run only after Curator
reports ConnectionState.LOST, restoring Solr 9 behavior during ZK rolling
restarts. [SOLR-18298](https://issues.apache.org/jira/browse/SOLR-18298)
([Shrey Narayan (NextBrick)](https://nextbrick.com))
- Incremental backup failures now report the original error instead of an
unrelated missing zk_backup directory exception
[SOLR-18303](https://issues.apache.org/jira/browse/SOLR-18303) (Prithvi S)
- Fix Thread Pool Starvation in HttpJdkSolrClient. HttpJdkSolrClient defaults
would often create 32 threads, likely under-utilizing them. and it would cap
threads to 256. Now it does neither by default but Executor customization (and
other saturation controls) remain.
[SOLR-18312](https://issues.apache.org/jira/browse/SOLR-18312) (Renato
Haeberli) (David Smiley)
+- Admin UI no longer sends nodes=all in standalone mode.
[SOLR-18317](https://issues.apache.org/jira/browse/SOLR-18317) (Nick Shanin)
+- The V2 JAX-RS API, when faced with an error, could throw an NPE masking the
true problem. [SOLR-18324](https://issues.apache.org/jira/browse/SOLR-18324)
(Eric Pugh)
- PRS based collection creation returns too early; can cause restore failure.
[SOLR-18334](https://issues.apache.org/jira/browse/SOLR-18334) (David Smiley)
- /replication?command=details now reports backup details while the backup is
still running, including file counts, instead of the previous backup's status
[SOLR-18344](https://issues.apache.org/jira/browse/SOLR-18344) (Idan Tepper
@idantepper)
- SolrJ ClientUtils.encodeLocalParamVal() can produce lossy/invalid encodings
with a backslash or leading quotes. Affects faceting with a custom facet
response key. Affects the SQL module for LIKE queries.
[SOLR-18345](https://issues.apache.org/jira/browse/SOLR-18345) (David Smiley)
@@ -200,6 +208,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- `<metrics enabled="false"/>` in `solr.xml` now actually disables the metrics
facility: no metric exporter or JVM runtime metrics are set up, and instruments
are created from a no-op OpenTelemetry meter, so registries no longer
accumulate metrics (and the memory they retain) for a disabled node.
[SOLR-18455](https://issues.apache.org/jira/browse/SOLR-18455) ([Mikhail
Khludnev](https://home.apache.org/phonebook.html?uid=mkhl) @mkhludnev)
- The DisMax query parser no longer adds an empty, no-op boolean clause to the
query when the pf parameter is blank or missing.
[SOLR-504](https://issues.apache.org/jira/browse/SOLR-504) (Eric Pugh)
- ConcurrentUpdateSolrClient now identifies the target server when an update
fails to connect, instead of reporting a bare connection error with no URL.
[SOLR-7177](https://issues.apache.org/jira/browse/SOLR-7177) (Serhiy
Bzhezytskyy)
+- Skip null per-leaf bitsets in /export instead of throwing NPE.
[SOLR-8291](https://issues.apache.org/jira/browse/SOLR-8291)
[SOLR-13217](https://issues.apache.org/jira/browse/SOLR-13217) (Nick Shanin)
- Pure negative (NOT) expressions in the "lucene" (default) QParser no longer
need an explicit *:* to work.
[SOLR-18256](https://issues.apache.org/jira/browse/SOLR-18256) (Abhishek
Umarjikar @abumarjikar)
- SlowCompositeReaderWrapper no longer misreports the index sort and hasBlocks
of a multi-segment composite view; both were previously taken from the first
segment only, which is wrong whenever there is more than one segment.
[PR#4825](https://github.com/apache/solr/pull/4825) (David Smiley)
- Fix NullPointerException in GetNodeSystemInfo when the nodes parameter is
provided in SolrCloud mode
[SOLR-18318](https://issues.apache.org/jira/browse/SOLR-18318) (Yash Goswami)
@@ -263,7 +272,7 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Remove Request ID based tracing.
[SOLR-17934](https://issues.apache.org/jira/browse/SOLR-17934) (Eric Pugh)
- Remove dead code related to the V2 RenameCore API. Add additional tests.
[PR#4172](https://github.com/apache/solr/pull/4172) (Eric Pugh)
-### Dependency Upgrades (148 changes)
+### Dependency Upgrades (155 changes)
- Update swagger3 [PR#3077](https://github.com/apache/solr/pull/3077) (solrbot)
- Update com.fasterxml.woodstox:woodstox-core to v7.2.1
[PR#3083](https://github.com/apache/solr/pull/3083) (solrbot)
@@ -359,6 +368,13 @@ This file lists Solr's raw release notes with details of
every change to Solr. M
- Update Error Prone to v2.50.0
[PR#4847](https://github.com/apache/solr/pull/4847) (solrbot)
- Update Google Cloud [PR#4848](https://github.com/apache/solr/pull/4848)
(solrbot)
- Update GitHub Actions (major)
[PR#4854](https://github.com/apache/solr/pull/4854) (solrbot)
+- Update Jackson & Woodstox
[PR#4977](https://github.com/apache/solr/pull/4977) (solrbot)
+- Update com.squareup.okio:okio to v3.18.2
[PR#4978](https://github.com/apache/solr/pull/4978) (solrbot)
+- Update gRPC and Netty [PR#4980](https://github.com/apache/solr/pull/4980)
(solrbot)
+- Update Logging to v2.0.20
[PR#4981](https://github.com/apache/solr/pull/4981) (solrbot)
+- Update Admin UI [PR#4984](https://github.com/apache/solr/pull/4984) (solrbot)
+- Update org.apache.calcite.avatica:avatica-core to v1.29.0
[PR#4986](https://github.com/apache/solr/pull/4986) (solrbot)
+- Update Google Cloud [PR#4987](https://github.com/apache/solr/pull/4987)
(solrbot)
- Update com.github.ben-manes.versions to v0.53.0
[PR#3085](https://github.com/apache/solr/pull/3085) (solrbot)
- Update org.apache.calcite - abandoned
[PR#3119](https://github.com/apache/solr/pull/3119) (solrbot)
- Update adobe.testing.s3mock (major)
[PR#3122](https://github.com/apache/solr/pull/3122) (solrbot)
diff --git
a/changelog/unreleased/PR#4877-docbasedversionconstraints-reject-native-version.yml
b/changelog/v10.1.0/PR#4877-docbasedversionconstraints-reject-native-version.yml
similarity index 100%
rename from
changelog/unreleased/PR#4877-docbasedversionconstraints-reject-native-version.yml
rename to
changelog/v10.1.0/PR#4877-docbasedversionconstraints-reject-native-version.yml
diff --git a/changelog/unreleased/PR#4977-update-jackson-woodstox.yml
b/changelog/v10.1.0/PR#4977-update-jackson-woodstox.yml
similarity index 100%
rename from changelog/unreleased/PR#4977-update-jackson-woodstox.yml
rename to changelog/v10.1.0/PR#4977-update-jackson-woodstox.yml
diff --git a/changelog/unreleased/PR#4978-update-com-squareup-okio-okio.yml
b/changelog/v10.1.0/PR#4978-update-com-squareup-okio-okio.yml
similarity index 100%
rename from changelog/unreleased/PR#4978-update-com-squareup-okio-okio.yml
rename to changelog/v10.1.0/PR#4978-update-com-squareup-okio-okio.yml
diff --git a/changelog/unreleased/PR#4980-update-grpc-and-netty.yml
b/changelog/v10.1.0/PR#4980-update-grpc-and-netty.yml
similarity index 100%
rename from changelog/unreleased/PR#4980-update-grpc-and-netty.yml
rename to changelog/v10.1.0/PR#4980-update-grpc-and-netty.yml
diff --git a/changelog/unreleased/PR#4981-update-logging-to-v2-0-20.yml
b/changelog/v10.1.0/PR#4981-update-logging-to-v2-0-20.yml
similarity index 100%
rename from changelog/unreleased/PR#4981-update-logging-to-v2-0-20.yml
rename to changelog/v10.1.0/PR#4981-update-logging-to-v2-0-20.yml
diff --git a/changelog/unreleased/PR#4984-update-admin-ui.yml
b/changelog/v10.1.0/PR#4984-update-admin-ui.yml
similarity index 100%
rename from changelog/unreleased/PR#4984-update-admin-ui.yml
rename to changelog/v10.1.0/PR#4984-update-admin-ui.yml
diff --git
a/changelog/unreleased/PR#4986-update-org-apache-calcite-avatica-avatica-core.yml
b/changelog/v10.1.0/PR#4986-update-org-apache-calcite-avatica-avatica-core.yml
similarity index 100%
rename from
changelog/unreleased/PR#4986-update-org-apache-calcite-avatica-avatica-core.yml
rename to
changelog/v10.1.0/PR#4986-update-org-apache-calcite-avatica-avatica-core.yml
diff --git a/changelog/unreleased/PR#4987-update-google-cloud.yml
b/changelog/v10.1.0/PR#4987-update-google-cloud.yml
similarity index 100%
rename from changelog/unreleased/PR#4987-update-google-cloud.yml
rename to changelog/v10.1.0/PR#4987-update-google-cloud.yml
diff --git a/changelog/unreleased/SOLR-16396-config-get.yml
b/changelog/v10.1.0/SOLR-16396-config-get.yml
similarity index 100%
rename from changelog/unreleased/SOLR-16396-config-get.yml
rename to changelog/v10.1.0/SOLR-16396-config-get.yml
diff --git a/changelog/unreleased/SOLR-16458.yml
b/changelog/v10.1.0/SOLR-16458.yml
similarity index 100%
rename from changelog/unreleased/SOLR-16458.yml
rename to changelog/v10.1.0/SOLR-16458.yml
diff --git a/changelog/unreleased/SOLR-17432-otel-java-agent.yml
b/changelog/v10.1.0/SOLR-17432-otel-java-agent.yml
similarity index 100%
rename from changelog/unreleased/SOLR-17432-otel-java-agent.yml
rename to changelog/v10.1.0/SOLR-17432-otel-java-agent.yml
diff --git a/changelog/unreleased/SOLR-18277.yml
b/changelog/v10.1.0/SOLR-18277.yml
similarity index 100%
rename from changelog/unreleased/SOLR-18277.yml
rename to changelog/v10.1.0/SOLR-18277.yml
diff --git a/changelog/unreleased/SOLR-18317.yml
b/changelog/v10.1.0/SOLR-18317.yml
similarity index 100%
rename from changelog/unreleased/SOLR-18317.yml
rename to changelog/v10.1.0/SOLR-18317.yml
diff --git
a/changelog/unreleased/SOLR-18321-delete-collection-configset-if-unused.yml
b/changelog/v10.1.0/SOLR-18321-delete-collection-configset-if-unused.yml
similarity index 100%
rename from
changelog/unreleased/SOLR-18321-delete-collection-configset-if-unused.yml
rename to changelog/v10.1.0/SOLR-18321-delete-collection-configset-if-unused.yml
diff --git a/changelog/unreleased/SOLR-18324-jersey-null-request-npe.yml
b/changelog/v10.1.0/SOLR-18324-jersey-null-request-npe.yml
similarity index 100%
rename from changelog/unreleased/SOLR-18324-jersey-null-request-npe.yml
rename to changelog/v10.1.0/SOLR-18324-jersey-null-request-npe.yml
diff --git a/changelog/unreleased/SOLR-8291.yml
b/changelog/v10.1.0/SOLR-8291.yml
similarity index 100%
rename from changelog/unreleased/SOLR-8291.yml
rename to changelog/v10.1.0/SOLR-8291.yml
diff --git a/changelog/v10.1.0/version-summary.md
b/changelog/v10.1.0/version-summary.md
index 93885e56222..e26c385ac5f 100644
--- a/changelog/v10.1.0/version-summary.md
+++ b/changelog/v10.1.0/version-summary.md
@@ -16,7 +16,7 @@
- A `filecontent` request to `/solr/{core}/replication` with `dirType=cf` or
`dirType=tlogFile` must name a file that resolves inside the core's config or
tlog directory; otherwise it is rejected.
- In SolrCloud, a request served by a core on the receiving node is authorized
against that core's collection, regardless of the `collection` request
parameter. Requests the core sends on to other collections, such as a
distributed search over several collections or an alias, are authorized by the
nodes that receive them, against their own collections. For example, a search
sent to a core of collection `A` with `collection=B` needs read permission on
both `A` and `B`.
-### Added (64 changes)
+### Added (65 changes)
- New SolrJ CollectionScopedSolrClient
[PR#4418](https://github.com/apache/solr/pull/4418) (David Smiley)
- Add V2 "System Info" API and SolrJ request 'SystemApi.GetNodeSystemInfo'
[PR#4078](https://github.com/apache/solr/pull/4078) (Isabelle Giguère)
@@ -31,6 +31,7 @@
- Add ConfigSets.Download and ConfigSets.GetFile to SolrJ
[SOLR-15701](https://issues.apache.org/jira/browse/SOLR-15701) (Eric Pugh)
- SolrJ now offers a SolrRequest class allowing users to perform v2
single-node healthchecks: NodeApi.Healthcheck
[SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Eric Pugh)
(Jason Gerlowski)
- A single node system property can be fetched at GET
/api/node/properties/{propertyName} (v1 still uses ?name=). SolrJ now provides
NodeApi.GetNodeProperties and NodeApi.GetNodeProperty.
[SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Prithvi S
@iprithv)
+- SolrJ now offers a `SystemApi.GetThreadDump` SolrRequest class for fetching
thread dumps from a single Solr node through the JAX-RS `/api/node/threads`
API. [SOLR-16458](https://issues.apache.org/jira/browse/SOLR-16458) (Yash
Goswami)
- Introduce new SolrJ SolrRequest classes for metrics and "system info"
requests. [SOLR-17136](https://issues.apache.org/jira/browse/SOLR-17136)
(Isabelle Giguère) (Pierre Salagnac)
- Support block / nested-docs with index sorting
[SOLR-17170](https://issues.apache.org/jira/browse/SOLR-17170) (David Smiley)
- SolrJ's QueryResponse and other response objects can now read a JSON
response, via the new `CanonicalJsonResponseParser`..
[SOLR-17316](https://issues.apache.org/jira/browse/SOLR-17316) (Serhiy
Bzhezytskyy)
@@ -50,7 +51,7 @@
- Add top-level "queries" support to JsonQueryRequest in SolrJ
[SOLR-18093](https://issues.apache.org/jira/browse/SOLR-18093) (Sonu Sharma
@ercsonusharma)
- Provide NoOpRequestWriter and NoOpRequestHandler that can be used to disable
implicitly configured equivalents.
[SOLR-18095](https://issues.apache.org/jira/browse/SOLR-18095) (Eric Pugh)
- CoreAdmin API (/admin/cores?action=UPGRADECOREINDEX) to upgrade an index
in-place [SOLR-18096](https://issues.apache.org/jira/browse/SOLR-18096) (Rahul
Goswami)
-- Script creating a cluster using bin/solr start -e cloud with --prompt-inputs
option. [SOLR-18118](https://issues.apache.org/jira/browse/SOLR-18118) (Eric
Pugh) (Rahul Goswami)
+- Script creating a cluster using bin/solr start -e cloud with --script-inputs
option. [SOLR-18118](https://issues.apache.org/jira/browse/SOLR-18118) (Eric
Pugh) (Rahul Goswami)
- Add --solr-connection option to Solr CLI tools, enabling HTTP(S)-based
communication without requiring direct ZooKeeper access
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
- Add HTTP(S)-based SolrCloud connection support for the Solr SQL JDBC driver
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
- Add 'solrConnection' parameter to cross-collection joins in the Join Query
Parser, expanding use to HTTP based SolrCloud coordinates.
[SOLR-18130](https://issues.apache.org/jira/browse/SOLR-18130) (vyatkin.v)
@@ -83,7 +84,7 @@
- CrossDC Consumer: add /health endpoint
[SOLR-18061](https://issues.apache.org/jira/browse/SOLR-18061) (Andrzej
Bialecki @ab)
- ConcurrentUpdateSolrClient can now report which documents failed to reach
the server. Register a handler via the Builder's withErrorHandler(...) to
recover the documents of a failed batch, for example to route them to a retry
queue or dead-letter topic.
[SOLR-3284](https://issues.apache.org/jira/browse/SOLR-3284) (Serhiy
Bzhezytskyy)
-### Changed (48 changes)
+### Changed (52 changes)
- Dropdowns for collection/core, for fields on the schema-page and for
field-types on the analyze page are now using a contains-filtering
[GITHUB#4121](https://github.com/apache/solr/pull/4121) (Renato Haeberli)
- Refactor of the language-model module to accomodate new upcoming LLM
oriented features avoiding code duplication.
[PR#4375](https://github.com/apache/solr/pull/4375) (Nicolò Rinaldi) (Anna
Ruggero) (Alessandro benedetti)
@@ -93,9 +94,12 @@
- HttpJettySolrClient defaults would often create 32 threads, likely
under-utilizing them. and it would cap threads to 256. Now it does neither by
default but Executor customization (and other saturation controls) remain.
[PR#4668](https://github.com/apache/solr/pull/4668) (David Smiley)
- Distributed tracing and audit logging now see request parameters sent in a
url-encoded POST body, not only those in the URL query string.
[PR#4870](https://github.com/apache/solr/pull/4870) (David Smiley) (Xinyao
Zhang)
- HttpSolrClient impls now sends certain interesting request parameters in the
URL query string when a POST of parameters is submitted. In other words,
withTheseParamNamesInTheUrl now has a default set. This improves observability,
particularly for distributed search & admin commands.
[PR#4871](https://github.com/apache/solr/pull/4871) (David Smiley)
+- DocBasedVersionConstraintsProcessor now rejects a client-supplied _version_
with a 400 instead of silently ignoring it. And it no longer validates the
tombstone document shape when deleteVersionParam isn't configured
[PR#4877](https://github.com/apache/solr/pull/4877) (David Smiley)
- Parallelize Backup and Restore File Operations
[SOLR-1092](https://issues.apache.org/jira/browse/SOLR-1092) (Samuel Verstraete
@elangelo) (David Smiley @dsmiley)
- v2 cluster command-status APIs are now more REST-ful at GET/DELETE
/api/cluster/commands/{id} and DELETE /api/cluster/commands (the previous
/api/cluster/command-status paths are gone). SolrJ provides
ClusterApi.GetClusterCommandStatus, ClusterApi.DeleteClusterCommandStatus, and
ClusterApi.DeleteAllClusterCommandStatuses.
[SOLR-16390](https://issues.apache.org/jira/browse/SOLR-16390) (Prithvi S
@iprithv)
+- Migration of Get Config V2 API to JAX-RS construct. Note one response-shape
difference from V1 - a plugin's unnamed child elements (e.g. anonymous
`processor` entries under an `updateRequestProcessorChain`) are now grouped
under a `children` key in the V2 JSON response, instead of V1's legacy
empty-string (`""`) key.
[SOLR-16396](https://issues.apache.org/jira/browse/SOLR-16396) (Jalaz Kumar
@jaykay12) (Eric Pugh @epugh)
- VersionTool (bin/solr version) now reports remote server version when
`--solr-url` is provided
[SOLR-17318](https://issues.apache.org/jira/browse/SOLR-17318) ([Jan
Høydahl](https://home.apache.org/phonebook.html?uid=janhoy))
+- Solr now detects a loaded OpenTelemetry Java agent and uses the
OpenTelemetry it registered, with no need for a <tracerConfig> in solr.xml or
the opentelemetry module. OpenTelemetryConfigurator subclasses should now
implement createOpenTelemetry() and not set GlobalOpenTelemetry themselves;
getTracer()/getOpenTelemetrySdk() are deprecated.
[SOLR-17432](https://issues.apache.org/jira/browse/SOLR-17432) (David Smiley)
- QueryRequest.java in SolrJ no longer sends the 'qt' parameter to the server.
[SOLR-17715](https://issues.apache.org/jira/browse/SOLR-17715)
[PR#4397](https://github.com/apache/solr/pull/4397) (r4mercur @r4mercur)
- HttpJdkSolrClient & HttpJettySolrClient now send headers that enable Solr's
rate limiting to work.
[SOLR-17810](https://issues.apache.org/jira/browse/SOLR-17810) (David Smiley)
(Gaurav Tuli)
- Improved multiThreaded=true performance when a docset is needed (e.g.
faceting). [SOLR-17841](https://issues.apache.org/jira/browse/SOLR-17841)
(Puneet Ahuja @punAhuja)
@@ -120,6 +124,7 @@
- Optimize collapse performance for String fields in Solr 9.x and later
[SOLR-18304](https://issues.apache.org/jira/browse/SOLR-18304) (Bartosz
Fidrysiak)
- Optimize IndexSchema.getDynamicFieldType() by checking cached fields before
matching dynamic patterns.
[SOLR-18306](https://issues.apache.org/jira/browse/SOLR-18306) (Pierre Salagnac)
- Solr's 404 page is less generic. We now log 404s in Solr's log.
[SOLR-18319](https://issues.apache.org/jira/browse/SOLR-18319) (David Smiley)
+- bin/solr delete no longer requires a direct ZooKeeper connection to safely
delete a collection's configset; it now uses the Configsets V2 API instead,
relying on the API's existing unconditional refusal to delete a configset
that's still in use by another collection. The delete tool's -f/--force flag is
deprecated and no longer has any effect -- it never actually bypassed that
in-use check; it's kept only as a no-op for backward compatibility with
existing scripts. [SOLR-18321](https:/ [...]
- HttpJettySolrClient: detect if request wasn't sent; means retry-able.
CloudSolrClient & LBSolrClient will detect it.
[SOLR-18401](https://issues.apache.org/jira/browse/SOLR-18401) (David Smiley)
- Leader/follower replication now restarts with the latest index generation
when the selected generation expires during download, avoiding retries against
an unavailable generation.
[SOLR-18406](https://issues.apache.org/jira/browse/SOLR-18406) (ZhenyuLi
@JHSUYU)
- Simplify PingRequestHandler shard handling
[SOLR-18419](https://issues.apache.org/jira/browse/SOLR-18419) (Jan Høydahl)
@@ -134,7 +139,7 @@
- SolrJ v1 admin requests now use appropriate HTTP verbs -- mostly POST, some
GET [SOLR-18343](https://issues.apache.org/jira/browse/SOLR-18343) (Xinyao
Zhang)
- CrossDC Common optimize serialization for large docs
[SOLR-18415](https://issues.apache.org/jira/browse/SOLR-18415) (Andrzej
Bialecki)
-### Fixed (86 changes)
+### Fixed (90 changes)
- Fix getFirstLiveDoc so it returns the first live doc. Previously it would
often return nothing resulting in missing index flags in /admin/luke response.
[SOLR-18125](https://issues.apache.org/jira/browse/SOLR-18125) (Luke
Kot-Zaniewski)
- using window.location.origin rather than hard coded URL
[PR#4281](https://github.com/apache/solr/pull/4281) (Renato Haeberli)
@@ -182,11 +187,14 @@
- Fix several concurrency bugs in HttpShardHandler / ParallelHttpShardHandler
that could cause search threads to hang in take() or return HTTP 500 instead of
honoring shards.tolerant under thread-pool saturation
[SOLR-18244](https://issues.apache.org/jira/browse/SOLR-18244) (Mark Miller)
- Solr Admin UI properly supports multiple facet.field parameters
[SOLR-18246](https://issues.apache.org/jira/browse/SOLR-18246) (Umut Saribiyik)
- CertAuthPlugin now uses correct Jetty attribute for certificate lookup for
SSL authentication
[SOLR-18270](https://issues.apache.org/jira/browse/SOLR-18270) (Jean-Marie
HEITZ @heitzjm)
+- Restore the parent shard to ACTIVE after a failed split even if cluster
state is stale. [SOLR-18277](https://issues.apache.org/jira/browse/SOLR-18277)
(Nick Shanin)
- LoadAverageCircuitBreaker now caches its sampled value for a short TTL, so
it stops re-polling the OS load average per request at high RPS.
[SOLR-18284](https://issues.apache.org/jira/browse/SOLR-18284) (Mark Robert
Miller)
- MemoryCircuitBreaker now measures post-GC live heap data, so it no longer
trips when the heap is full of collectible garbage. Earlier versions sampled
MemoryMXBean.getHeapMemoryUsage().getUsed() on a 30-second moving average (6
samples), which trends toward max between collections during normal operation;
if you tuned a threshold against that behavior you may need to revisit it. This
breaks subclasses of MemoryCircuitBreaker: the deprecated
MemoryCircuitBreaker(int, int) constructor is [...]
- ZkController no longer treats every ZooKeeper reconnect as session
expiration. Re-election and core re-registration now run only after Curator
reports ConnectionState.LOST, restoring Solr 9 behavior during ZK rolling
restarts. [SOLR-18298](https://issues.apache.org/jira/browse/SOLR-18298)
([Shrey Narayan (NextBrick)](https://nextbrick.com))
- Incremental backup failures now report the original error instead of an
unrelated missing zk_backup directory exception
[SOLR-18303](https://issues.apache.org/jira/browse/SOLR-18303) (Prithvi S)
- Fix Thread Pool Starvation in HttpJdkSolrClient. HttpJdkSolrClient defaults
would often create 32 threads, likely under-utilizing them. and it would cap
threads to 256. Now it does neither by default but Executor customization (and
other saturation controls) remain.
[SOLR-18312](https://issues.apache.org/jira/browse/SOLR-18312) (Renato
Haeberli) (David Smiley)
+- Admin UI no longer sends nodes=all in standalone mode.
[SOLR-18317](https://issues.apache.org/jira/browse/SOLR-18317) (Nick Shanin)
+- The V2 JAX-RS API, when faced with an error, could throw an NPE masking the
true problem. [SOLR-18324](https://issues.apache.org/jira/browse/SOLR-18324)
(Eric Pugh)
- PRS based collection creation returns too early; can cause restore failure.
[SOLR-18334](https://issues.apache.org/jira/browse/SOLR-18334) (David Smiley)
- /replication?command=details now reports backup details while the backup is
still running, including file counts, instead of the previous backup's status
[SOLR-18344](https://issues.apache.org/jira/browse/SOLR-18344) (Idan Tepper
@idantepper)
- SolrJ ClientUtils.encodeLocalParamVal() can produce lossy/invalid encodings
with a backslash or leading quotes. Affects faceting with a custom facet
response key. Affects the SQL module for LIKE queries.
[SOLR-18345](https://issues.apache.org/jira/browse/SOLR-18345) (David Smiley)
@@ -197,6 +205,7 @@
- `<metrics enabled="false"/>` in `solr.xml` now actually disables the metrics
facility: no metric exporter or JVM runtime metrics are set up, and instruments
are created from a no-op OpenTelemetry meter, so registries no longer
accumulate metrics (and the memory they retain) for a disabled node.
[SOLR-18455](https://issues.apache.org/jira/browse/SOLR-18455) ([Mikhail
Khludnev](https://home.apache.org/phonebook.html?uid=mkhl) @mkhludnev)
- The DisMax query parser no longer adds an empty, no-op boolean clause to the
query when the pf parameter is blank or missing.
[SOLR-504](https://issues.apache.org/jira/browse/SOLR-504) (Eric Pugh)
- ConcurrentUpdateSolrClient now identifies the target server when an update
fails to connect, instead of reporting a bare connection error with no URL.
[SOLR-7177](https://issues.apache.org/jira/browse/SOLR-7177) (Serhiy
Bzhezytskyy)
+- Skip null per-leaf bitsets in /export instead of throwing NPE.
[SOLR-8291](https://issues.apache.org/jira/browse/SOLR-8291)
[SOLR-13217](https://issues.apache.org/jira/browse/SOLR-13217) (Nick Shanin)
- Pure negative (NOT) expressions in the "lucene" (default) QParser no longer
need an explicit *:* to work.
[SOLR-18256](https://issues.apache.org/jira/browse/SOLR-18256) (Abhishek
Umarjikar @abumarjikar)
- SlowCompositeReaderWrapper no longer misreports the index sort and hasBlocks
of a multi-segment composite view; both were previously taken from the first
segment only, which is wrong whenever there is more than one segment.
[PR#4825](https://github.com/apache/solr/pull/4825) (David Smiley)
- Fix NullPointerException in GetNodeSystemInfo when the nodes parameter is
provided in SolrCloud mode
[SOLR-18318](https://issues.apache.org/jira/browse/SOLR-18318) (Yash Goswami)
@@ -260,7 +269,7 @@
- Remove Request ID based tracing.
[SOLR-17934](https://issues.apache.org/jira/browse/SOLR-17934) (Eric Pugh)
- Remove dead code related to the V2 RenameCore API. Add additional tests.
[PR#4172](https://github.com/apache/solr/pull/4172) (Eric Pugh)
-### Dependency Upgrades (148 changes)
+### Dependency Upgrades (155 changes)
- Update swagger3 [PR#3077](https://github.com/apache/solr/pull/3077) (solrbot)
- Update com.fasterxml.woodstox:woodstox-core to v7.2.1
[PR#3083](https://github.com/apache/solr/pull/3083) (solrbot)
@@ -356,6 +365,13 @@
- Update Error Prone to v2.50.0
[PR#4847](https://github.com/apache/solr/pull/4847) (solrbot)
- Update Google Cloud [PR#4848](https://github.com/apache/solr/pull/4848)
(solrbot)
- Update GitHub Actions (major)
[PR#4854](https://github.com/apache/solr/pull/4854) (solrbot)
+- Update Jackson & Woodstox
[PR#4977](https://github.com/apache/solr/pull/4977) (solrbot)
+- Update com.squareup.okio:okio to v3.18.2
[PR#4978](https://github.com/apache/solr/pull/4978) (solrbot)
+- Update gRPC and Netty [PR#4980](https://github.com/apache/solr/pull/4980)
(solrbot)
+- Update Logging to v2.0.20
[PR#4981](https://github.com/apache/solr/pull/4981) (solrbot)
+- Update Admin UI [PR#4984](https://github.com/apache/solr/pull/4984) (solrbot)
+- Update org.apache.calcite.avatica:avatica-core to v1.29.0
[PR#4986](https://github.com/apache/solr/pull/4986) (solrbot)
+- Update Google Cloud [PR#4987](https://github.com/apache/solr/pull/4987)
(solrbot)
- Update com.github.ben-manes.versions to v0.53.0
[PR#3085](https://github.com/apache/solr/pull/3085) (solrbot)
- Update org.apache.calcite - abandoned
[PR#3119](https://github.com/apache/solr/pull/3119) (solrbot)
- Update adobe.testing.s3mock (major)
[PR#3122](https://github.com/apache/solr/pull/3122) (solrbot)