Skip to content

Releases: elastic/go-elasticsearch

v9.3.2

16 Apr 12:54
517193e

Choose a tag to compare

9.3.2 (2026-04-16)

⚠ BREAKING CHANGES

  • Typed API: update client from spec df81426

Features

  • Add AutoDrainBody option for automatic response body draining (#1372) (783c1ac)
  • Add functional options pattern for client instantiation (#1295) (#1323) (c0a69b1)
  • esutil: Add Flush method to BulkIndexer for explicit flush-and-wait (#1363) (892f0d6)
  • Typed API: Improved generated code comments (f37f7d1)
  • Typed API: Update client from spec df81426 (32ea244)

Bug Fixes

  • esapi: Document Response.Body must be closed; fix leaks in examples (#1313) (3b3dd1e)
  • esutil: Deterministic context check in BulkIndexer.Close (#1340) (a02272b)
  • esutil: Propagate caller context through BulkIndexer item callbacks (#1316) (d28cd9d)
  • Typed API: Context variable shadowing in TypedAPI Perform causing otel attributes to leak to parent span (#1331) (f37f7d1)

v9.2.4

16 Apr 12:30
f889ff1

Choose a tag to compare

9.2.4 (2026-04-16)

⚠ BREAKING CHANGES

  • Typed API: update client from spec 49022a2

Features

  • Add AutoDrainBody option for automatic response body draining (#1371) (3ece805)
  • Add functional options pattern for client instantiation (#1295) (#1322) (bf3b10b)
  • esutil: Add Flush method to BulkIndexer for explicit flush-and-wait (#1362) (b4d2d73)
  • Typed API: Improved generated code comments (f52219c)
  • Typed API: Update client from spec 49022a2 (f32334d)

Bug Fixes

  • esapi: Document Response.Body must be closed; fix leaks in examples (#1312) (c680847)
  • esutil: Deterministic context check in BulkIndexer.Close (#1339) (0b34e21)
  • esutil: Propagate caller context through BulkIndexer item callbacks (#1315) (cf70e22)
  • Typed API: Context variable shadowing in TypedAPI Perform causing otel attributes to leak to parent span (#1330) (f52219c)

v8.19.4

16 Apr 12:15
e263c13

Choose a tag to compare

8.19.4 (2026-04-16)

⚠ BREAKING CHANGES

  • Typed API: update client from spec 6ee016a

Features

  • Add AutoDrainBody option for automatic response body draining (#1370) (c9a2b0b)
  • Add functional options pattern for client instantiation (#1321) (7561adf)
  • esutil: Add Flush method to BulkIndexer for explicit flush-and-wait (#1361) (be8564d)
  • Typed API: Improved generated code comments (fe06c54)
  • Typed API: Update client from spec 6ee016a (74ed65d)

Bug Fixes

  • esutil: Deterministic context check in BulkIndexer.Close (#1338) (a00439e)
  • esutil: Propagate caller context through BulkIndexer item callbacks (#1314) (ca77d44)
  • Typed API: Context variable shadowing in TypedAPI Perform causing otel attributes to leak to parent span (#1329) (fe06c54)

v9.3.1

11 Feb 11:19
7932e08

Choose a tag to compare

9.3.1 (2026-02-11)

Bug Fixes

  • bulk_indexer: Enable instrumentation support in bulk index requests (#1243) (3300e5d)
  • esutil: Avoid duplicate bulk indexer OnError callbacks (#1251) (9255720)
  • esutil: Propagate context timeout while closing bulk indexer (#1254) (6a0b973)
  • Prevent BulkIndexer from silently dropping items on flush failure (#1241) (0215eec)
  • Typed API: Add field-level nil checks during deserialisation (#1225) (fc22640)
  • Typed API: Add missing custom UnmarshalJSON methods for types with additional properties (fc22640)

v9.2.3

11 Feb 10:51
ad878e3

Choose a tag to compare

9.2.3 (2026-02-11)

Bug Fixes

  • bulk_indexer: Enable instrumentation support in bulk index requests (#1242) (71b0b0d)
  • esutil: Avoid duplicate bulk indexer OnError callbacks (#1250) (8537e89)
  • esutil: Propagate context timeout while closing bulk indexer (#1253) (405af64)
  • Prevent BulkIndexer from silently dropping items on flush failure (#1240) (755a9d3)
  • Typed API: Add field-level nil checks during deserialisation (#1224) (59f268f)
  • Typed API: Add missing custom UnmarshalJSON methods for types with additional properties (59f268f)

v8.19.3

11 Feb 10:37
a79cddd

Choose a tag to compare

8.19.3 (2026-02-10)

Bug Fixes

  • bulk_indexer: Enable instrumentation support in bulk index requests (#1244) (55c605e)
  • esutil: Avoid duplicate bulk indexer OnError callbacks (#1249) (3f5bf89)
  • esutil: Propagate context timeout while closing bulk indexer (#1252) (9fe5ea8)
  • Prevent BulkIndexer from silently dropping items on flush failure (#1239) (b80ae39)
  • Typed API: Add field-level nil checks during deserialisation (#1223) (7f27889)
  • Typed API: Add missing custom UnmarshalJSON methods for types with additional properties (7f27889)

v9.3.0

04 Feb 10:27
ca214d3

Choose a tag to compare

9.3.0 (2026-02-04)

⚠ BREAKING CHANGES

  • Upgrade Go version from 1.23 to 1.24 (#1137)
  • API: API methods and request fields that previously accepted a single string for resource identifiers (e.g., indices, names, IDs, routing, features) now require []string. Corresponding WithX helpers now accept variadic arguments (...string).
  • API: All ExpandWildcards request fields were changed from string to []string, and WithExpandWildcards helpers now accept variadic arguments (...string).
  • API: Routing parameters across document, search, and multi-document APIs were changed from string to []string, and related WithRouting helpers now accept variadic arguments (...string).
  • API: Duration-based parameters previously expressed as string now use time.Duration (e.g., KeepAlive, Interval, BucketSpan). Call sites must pass time.Duration values.
  • API: ML APIs using interface{} for start/end time parameters now require string values, removing support for arbitrary types.
  • API: Several top-level API methods now require []string instead of string for path parameters that support multiple resources (e.g., indices, templates, data streams, transforms, repositories, privileges).
  • API: MonitoringBulk was refactored: DocumentType support was removed, Interval is now time.Duration, and required parameters were added explicitly to the method signature.
  • API: Some WithX functional options changed between single-value and variadic forms to match API behaviour. Existing option usage may require updates.
  • API: Request struct fields were updated to reflect REST API semantics, including changes from string to []string and removal of deprecated fields. Direct struct initialization may require changes.

Features

  • API: Introduce strong typing for duration values (3c657da)
  • API: Support multi-value resource parameters (3c657da)
  • API: Support multiple resources per request (3c657da)
  • API: Update APIs to 9.3.0 (3c657da)
  • Expose FlushedMs metric in BulkIndexer (#1191) (d67d0be)
  • Typed API: Add DenseVectorF32 and DenseVectorBytes types, improving indexing performance of dense vectors by up to 3x when used instead of a float32 array (f543b82)
  • Typed API: Update TypedAPI to latest elasticsearch-specification 9.3.0 (f543b82)
  • Upgrade Go version from 1.23 to 1.24 (#1137) (05f15eb)

Bug Fixes

  • API: Align request structs with Elasticsearch REST spec (3c657da)
  • API: Align routing parameters with REST API (3c657da)
  • API: Correct functional option cardinality (3c657da)
  • API: Modernize MonitoringBulk API (3c657da)
  • API: Normalize expand_wildcards handling (3c657da)
  • API: Simplify ML time range parameters (3c657da)
  • esutil: Handle error from Seek in BulkIndexer.writeBody (#1162) (ab7b3bb)
  • Typed API: Marshal Additional Properties into json.RawMessage instead of any to avoid loss of precision (#1147) (e3e61d6)

v9.2.2

04 Feb 10:12
65dcb70

Choose a tag to compare

9.2.2 (2026-02-04)

Features

Bug Fixes

  • esutil: Handle error from Seek in BulkIndexer.writeBody (#1161) (5394405)
  • Typed API: Marshal Additional Properties into json.RawMessage instead of any to avoid loss of precision (#1201) (b5ceeee)

v9.1.2

04 Feb 09:59
23e8235

Choose a tag to compare

9.1.2 (2026-02-04)

Features

Bug Fixes

  • Typed API: Marshal Additional Properties into json.RawMessage instead of any to avoid loss of precision (#1200) (f32bfca)

v8.19.2

04 Feb 09:39
dd3c2e6

Choose a tag to compare

8.19.2 (2026-02-04)

Features

Bug Fixes

  • esutil: Handle error from Seek in BulkIndexer.writeBody (#1160) (cf53b87)
  • Typed API: Marshal Additional Properties into json.RawMessage instead of any to avoid loss of precision (#1196) (08855c2)