Skip to content

Commit 43dc165

Browse files
Merge pull request #458 from mikereiche/release/3.9
Release 3.9.0 with Release Notes instead of Summary
2 parents dfff054 + 5c628ac commit 43dc165

File tree

1 file changed

+55
-59
lines changed

1 file changed

+55
-59
lines changed

modules/project-docs/pages/sdk-release-notes.adoc

Lines changed: 55 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -71,85 +71,81 @@ Optional artifacts on top of this SDK version are tested for the following compa
7171
|=======================
7272

7373

74-
# Release notes - Couchbase Java Client - 3.9.0
7574

76-
==== New Feature
77-
78-
https://couchbasecloud.atlassian.net/browse/JCBC-2193[JCBC-2193]:
79-
Support FTS like Pre-Filters while doing Vector Search.
80-
81-
https://couchbasecloud.atlassian.net/browse/JCBC-2198[JCBC-2198]:
82-
Operational SDK prevented from connecting to Enterprise Analytics Cluster.
83-
84-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1637[JVMCBC-1637]:
85-
Publish a BOM.
75+
==== Behavioral Changes
8676

77+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1660[JVMCBC-1660]:
78+
The "auto" network selection heuristic has been changed to fall back to the "external" network if the "external" network is present.
79+
Previously, if there was no exact match between an address in the connection string and an address in the cluster topology reported by the server, the SDK would select the "default" network.
80+
Now, if there is no match and an "external" network is present, the SDK selects the "external" network.
81+
+
82+
If this change causes the SDK to select the incorrect network for your deployment, use the xref:ref:client-settings.adoc#io.networkResolution[io.networkResolution] client setting to configure the SDK to use the "default" network.
8783

8884
==== Bug Fixes
8985

90-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1644[JVMCBC-1644]:
91-
`Query\_context` namespace should not be surrounded by backticks.
86+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1656[JVMCBC-1656]:
87+
Fixed an issue that could prevent the SDK from periodically updating its list of KV node addresses.
88+
This could occur if the addresses in the connection string (or DNS SRV record) differ from the server’s self-reported address as they appear in the admin UI.
89+
This issue can lead to `UnknownHostException` messages in the SDK logs.
90+
To resolve the issue, the SDK now feeds both “global” and “bucket” topology info into the same funnel, so the SDK can update its list of node addresses from either source.
9291

93-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1656[JVMCBC-1656]:
94-
Java SDK Seed Nodes Don't Always Get Correctly Updated.
92+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1662[JVMCBC-1662]:
93+
Fixed an issue that prevented the SDK from honoring the "preferred server group" option inside transactions.
9594

96-
(https://couchbasecloud.atlassian.net/browse/JVMCBC-1660[JVMCBC-1660]:
97-
Change Network Heuristic for JVM SDKs.
95+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1664[JVMCBC-1664]:
96+
Exceptionally long-running analytics queries no longer throw `ArrayIndexOutOfBoundsException`.
9897

99-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1662[JVMCBC-1662]:
100-
Preferred server group not honored in transactions.
98+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1671[JVMCBC-1671]:
99+
All expected attributes are now included in transactions metrics exported by the SDK.
101100

102-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1664[JVMCBC-1664]:
103-
`ArrayIndexOutOfBoundsException` when request takes more than 1 hour.
104-
105-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1671[JVMCBC-1671]:
106-
Transactions metrics not reporting all required attributes.
107-
108-
109-
==== Improvements
110-
111-
https://couchbasecloud.atlassian.net/browse/JCBC-2189[JCBC-2189]:
112-
Promoted App Telemetry config options from Volatile to Committed.
113-
114-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1639[JVMCBC-1639]:
115-
Migrated to mono-versioning.
116-
117-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1659[JVMCBC-1659]:
118-
GHA: Automate publishing API reference documentation.
119-
120-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1668[JVMCBC-1668]:
121-
Remove Project Reactor links from API reference documentation.
101+
==== Improvement
122102

123-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1607[JVMCBC-1607]:
124-
Improve how trusted certificates are logged
103+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1639[JVMCBC-1639]:
104+
We’ve adopted a mono-versioning strategy for the Couchbase JVM client libraries.
105+
The Scala and Kotlin SDKs, along with the core library and optional modules, are now aligned with the Java SDK at version 3.9.0.
106+
+
107+
Although this is a technically a major version bump for some components, in this exceptional case it does not indicate a breaking change.
108+
The goal of this alignment is twofold: to minimize confusion about which versions are compatible with each other,
109+
and to enable a more disciplined branch management strategy where patch releases contain only low-risk bug fixes.
125110

126-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1612[JVMCBC-1612]:
127-
Use `IdleStateHandler` to detect dead or half-open KV connections.
111+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1607[JVMCBC-1607]:
112+
Improved how the SDK logs information about trusted TLS certificates on startup.
113+
It now logs up to 5 certificates at `INFO` level, and the full list at `DEBUG` level.
114+
Previously, the SDK logged the full list at `INFO` level, which could prevent other interesting configuration info from being included in the log, depending on how logging was configured.
128115

129-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1634[JVMCBC-1634]:
130-
Flatten published POMs.
116+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1612[JVMCBC-1612]:
117+
The SDK is now more aggressive about detecting dead or half-open KV connections.
118+
It closes a connection if there is no incoming traffic for the duration specified by `io.configIdleRedialTimeout` (default value: 5 minutes),
119+
and sends a `NOOP` request if there is no incoming traffic for hallf that duration.
131120

132-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1648[JVMCBC-1648]:
133-
Upgrade Jackson from 2.17.3 to 2.19.2.
121+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1648[JVMCBC-1648]:
122+
Upgraded `Jackson` from `2.17.3` to `2.19.2`.
134123

135-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1651[JVMCBC-1651]:
136-
Support accessDeleted reads for subdoc replica reads.
124+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1651[JVMCBC-1651]:
125+
Improved internal support for sub-document replica reads against upcoming server versions.
137126

138-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1652[JVMCBC-1652]:
139-
Read library version from a new `\`version.properties\`` resource instead of JAR manifest.
127+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1652[JVMCBC-1652]:
128+
Shading the Couchbase SDK no longer causes it report a version number of `0.0.0`.
140129

141-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1657[JVMCBC-1657]:
142-
Improve backpressure implementation for row-based HTTP services.
130+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1657[JVMCBC-1657]:
131+
Improved the backpressure implementation for reactive SQL++, Analytics, and Full-Text Search queries.
132+
The SDK now requires less memory to buffer results if the consumer cannot keep up with the producer.
143133

144-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1658[JVMCBC-1658]:
145-
Better filtering of suppressed exception stack traces.
134+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1658[JVMCBC-1658]:
135+
When the SDK removes uninteresting Netty stack frames from stack traces, it now also applies the filtering to suppressed exceptions.
136+
This improves stack trace readability in some cases when Project Reactor debugging is enabled.
146137

147-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1661[JVMCBC-1661]:
148-
Upgrade Gson from 2.11.0 to 2.13.1.
138+
==== New Features
149139

150-
https://couchbasecloud.atlassian.net/browse/JVMCBC-1665[JVMCBC-1665]:
151-
Let internal Couchbase products bypass cluster type check.
140+
* https://couchbasecloud.atlassian.net/browse/JVMCBC-1637[JVMCBC-1637]:
141+
A Bill of Materials (BOM) for Couchbase JVM clients is now available.
142+
It specifies compatible versions of the Java, Scala, and Kotlin clients, as well as the optional metrics and tracing components.
143+
https://central.sonatype.com/artifact/com.couchbase.client/couchbase-client-bom[https://central.sonatype.com/artifact/com.couchbase.client/couchbase-client-bom].
152144

145+
* https://couchbasecloud.atlassian.net/browse/JCBC-2193[JCVC-2193]:
146+
A Full-Text Search vector query now has an optional "prefilter" parameter.
147+
This is a non-vector query that the server executes first to get an intermediate result.
148+
Then it executes the vector query on the intermediate result to get the final result.
153149

154150

155151

0 commit comments

Comments
 (0)