Fluent Bit 4.0.4
https://fluentbit.io/announcements/v4.0.4/
- release: update to 4.0.4 by @github-actions in https://github.com/fluent/fluent-bit/pull/10411
- workflows: bump ossf/scorecard-action from 2.4.1 to 2.4.2 by @dependabot in https://github.com/fluent/fluent-bit/pull/10413
- install: update install script to handle Rocky/Alma repos now by @patrick-stephens in https://github.com/fluent/fluent-bit/pull/10418
- hash_table: fix leak in case insensitive and add unit tests by @edsiper in https://github.com/fluent/fluent-bit/pull/10424
- io: on network connect exceptions, invalidate file descriptor by @edsiper in https://github.com/fluent/fluent-bit/pull/10425
- config: implement storage inheritance option by @niedbalski in https://github.com/fluent/fluent-bit/pull/10396
- lib: luajit: only require a C compiler by @ThomasDevoogdt in https://github.com/fluent/fluent-bit/pull/10318
- log_event_decoder: validate memory allocation by @edsiper in https://github.com/fluent/fluent-bit/pull/10433
- filter_modify: fix leaks on exceptions by @edsiper in https://github.com/fluent/fluent-bit/pull/10434
- upstream: fix connection count when net.max_worker_connections is set by @edsiper in https://github.com/fluent/fluent-bit/pull/10423
- filter_lua: add groups metadata and body support by @edsiper in https://github.com/fluent/fluent-bit/pull/10444
- lib: lwrb: build it as a static lib instead of an interface by @edsiper in https://github.com/fluent/fluent-bit/pull/10447
- multiline: release unpacked contexts on exceptions by @edsiper in https://github.com/fluent/fluent-bit/pull/10449
- processor_content_modifier: fix leak on JSON conversion and data type by @edsiper in https://github.com/fluent/fluent-bit/pull/10450
- out_opentelemetry: fix leaks on exceptions by @edsiper in https://github.com/fluent/fluent-bit/pull/10451
- http_server: add new API to configure the maximum buffer size by @edsiper in https://github.com/fluent/fluent-bit/pull/10448
- in_calyptia_fleet: fix memory leak in get_fleet_id_from_header. by @pwhelan in https://github.com/fluent/fluent-bit/pull/10467
- out_opentelemetry: fix handling of retry status (fix #10481) by @edsiper in https://github.com/fluent/fluent-bit/pull/10497
- in_splunk: continue with the next token if length of auth header vs token doesn't match by @lecaros in https://github.com/fluent/fluent-bit/pull/10484
- config_format: yaml: add detailed error message on bad format by @edsiper in https://github.com/fluent/fluent-bit/pull/10499
- in_calyptia_fleet: report the configuration version. by @pwhelan in https://github.com/fluent/fluent-bit/pull/10496
- dockerfile: Enable default SIMD support in Docker by @jinyongchoi in https://github.com/fluent/fluent-bit/pull/10225
- in_docker: update function pointer signatures with correct args for C23 by @nuclearpidgeon in https://github.com/fluent/fluent-bit/pull/10490
- go: plugin_proxy: update function pointer signatures with correct args for C23 by @nuclearpidgeon in https://github.com/fluent/fluent-bit/pull/10489
- build: Isolate onigmo headers for building process by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10517
- gzip: Process boundary conditions strictly by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10526
- input_chunk: Keep consistent for appending chunks by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10527
- kafka: add support for AWS MSK IAM authentication by @edsiper in https://github.com/fluent/fluent-bit/pull/10525
- upstream: prioritize the reuse of connections instead of establishing new ones by @lecaros in https://github.com/fluent/fluent-bit/pull/10491
- processor_sampling: fix stale span references in registry by @edsiper in https://github.com/fluent/fluent-bit/pull/10538
- unicode: defs: conv: Implement conversion rules of character encodings by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10464
- in_prometheus_scrape: release context if upstream context fails by @edsiper in https://github.com/fluent/fluent-bit/pull/10539
- lib: onigmo: update onigmo function signatures and building process by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10521
- in_calyptia_fleet: fix init error mem leaks. by @pwhelan in https://github.com/fluent/fluent-bit/pull/10502
- examples: wasi_serde_json: Follow Rustc target renaming from wasm32-wasi to wasm32-wasmp1 by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10534
- in_kmsg: use strtoull to fix timestamp parsing on 32-bit systems by @mhusaam in https://github.com/fluent/fluent-bit/pull/10543
- build: kafka and MSK IAM: fix handling of definitions by @edsiper in https://github.com/fluent/fluent-bit/pull/10536
- record_accessor: add support for binary values and references by @edsiper in https://github.com/fluent/fluent-bit/pull/10548
- in_tail: process non utf8 encodings with conversion engine by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10542
- network: add new net.backlog property to set somaxconn in the process listeners by @edsiper in https://github.com/fluent/fluent-bit/pull/10550
- network: general fixes for failure states by @edsiper in https://github.com/fluent/fluent-bit/pull/10466
- opentelemetry: new abstraction to handle OTLP data by @edsiper in https://github.com/fluent/fluent-bit/pull/10549
- processor_sql: record_accessor: stream_processor: Fix yylex() function signatures by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10551
- filter_lua: add support to access groups and metadata by @edsiper in https://github.com/fluent/fluent-bit/pull/10457
- out_opentelemetry: fix logic for grouping when using resource_id/scope_id by @edsiper in https://github.com/fluent/fluent-bit/pull/10500
- downstream: fix check of accept timeout by @edsiper in https://github.com/fluent/fluent-bit/pull/10552
- filter_lua: tests: Expand waiting time for results with timeouts by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10553
- in_winevtlog: Launch w/o valid subscription when using ignore_missing_channels parameter by @cosmo0920 in https://github.com/fluent/fluent-bit/pull/10555
- out_cloudwatch_logs: fix strcasestr _GNU_SOURCE by @ThomasDevoogdt in https://github.com/fluent/fluent-bit/pull/10452
- in_tail: only rely on fstat() to detect file rotation by @david-garcia-garcia in https://github.com/fluent/fluent-bit/pull/10405
- reload: fix handling hot reload when reload failure by @zshuang0316 in https://github.com/fluent/fluent-bit/pull/10547
- in_kafka: add enable_auto_commit option for Kafka consumer by @edsiper in https://github.com/fluent/fluent-bit/pull/10558
- lib: cmetrics: upgrade to v1.0.4 by @edsiper in https://github.com/fluent/fluent-bit/pull/10557
- out_opentelemetry: fix behavior of record attributes handling by @edsiper in https://github.com/fluent/fluent-bit/pull/10562
- out_loki: prevent race conditions when multiple workers use remove_keys by @edsiper in https://github.com/fluent/fluent-bit/pull/10563
- workflows: deprecate windows-2019 by @edsiper in https://github.com/fluent/fluent-bit/pull/10567
- @mhusaam made their first contribution in https://github.com/fluent/fluent-bit/pull/10543
- @david-garcia-garcia made their first contribution in https://github.com/fluent/fluent-bit/pull/10405
- @zshuang0316 made their first contribution in https://github.com/fluent/fluent-bit/pull/10547
Full Changelog: https://github.com/fluent/fluent-bit/compare/v4.0.3...v4.0.4
2025-07-09, Version 24.4.0 (Current), @RafaelGSS
- [
22b60e8a57
] - (SEMVER-MINOR) crypto: support outputLength option in crypto.hash for XOF functions (Aditi) #58121 - [
80dec9849d
] - (SEMVER-MINOR) doc: add all watch-mode related flags to node.1 (Dario Piotrowicz) #58719 - [
87f4d078b3
] - (SEMVER-MINOR) fs: add disposable mkdtempSync (Kevin Gibbons) #58516 - [
9623c50b53
] - (SEMVER-MINOR) permission: propagate permission model flags on spawn (Rafael Gonzaga) #58853 - [
797ec4da04
] - (SEMVER-MINOR) sqlite: add support for readBigInts option in db connection level (Miguel Marcondes Filho) #58697 - [
ed966a0215
] - (SEMVER-MINOR) src,permission: add support to permission.has(addon) (Rafael Gonzaga) #58951 - [
fe17f5d285
] - (SEMVER-MINOR) watch: add--watch-kill-signal
flag (Dario Piotrowicz) #58719
- [
a118bfc536
] - assert: remove dead code (Yoshiya Hinosawa) #58760 - [
31252b9af1
] - benchmark: add source map and source map cache (Miguel Marcondes Filho) #58125 - [
4170359bcd
] - bootstrap: initialize http proxy after user module loader setup (Joyee Cheung) #58938 - [
c76585d10e
] - build: disable v8_enable_pointer_compression_shared_cage on non-64bit (Shelley Vohr) #58867 - [
049c838609
] - build: option to use custom inspector_protocol path (Shelley Vohr) #58839 - [
22b60e8a57
] - (SEMVER-MINOR) crypto: support outputLength option in crypto.hash for XOF functions (Aditi) #58121 - [
77712ae2a1
] - crypto: fix SHAKE128/256 breaking change introduced with OpenSSL 3.4 (Filip Skokan) #58942 - [
93e1a33b81
] - crypto: fix inclusion of OPENSSL_IS_BORINGSSL define (Shelley Vohr) #58845 - [
573171deb0
] - deps: V8: cherry-pick 0ce2edb7adfd (Levi Zim) #58773 - [
bf66291382
] - deps: V8: cherry-pick 1d7159580156 (Michaël Zasso) #58749 - [
f735b8b8d0
] - deps: update sqlite to 3.50.2 (Node.js GitHub Bot) #58882 - [
8e9622e494
] - deps: update undici to 7.11.0 (Node.js GitHub Bot) #58859 - [
8741da81c7
] - deps: update googletest to 35b75a2 (Node.js GitHub Bot) #58710 - [
028ce40e25
] - deps: update minimatch to 10.0.3 (Node.js GitHub Bot) #58712 - [
3afb15b715
] - dns: fix parse memory leaky (theanarkh) #58973 - [
f40ac32f3e
] - dns: set timeout to 1000ms when timeout < 0 (theanarkh) #58441 - [
921b563999
] - doc: remove broken link to permission model source code (Juan José) #58972 - [
78628d6158
] - doc: clarify details of TSC public and private meetings (James M Snell) #58925 - [
ab834a8b94
] - doc: mark stability markers consistent inglobals.md
(Antoine du Hamel) #58932 - [
8d4f6a0016
] - doc: move "Core Promise APIs" to "Completed initiatives" (Antoine du Hamel) #58934 - [
94725fced5
] - doc: fixfetch
subsections inglobals.md
(Antoine du Hamel) #58933 - [
a7a4870014
] - doc: add missingClass:
mentions (Antoine du Hamel) #58931 - [
98f29fa2fd
] - doc: remove myself from security steward rotation (Michael Dawson) #58927 - [
710e13d436
] - doc: add ovflowd back to core collaborators (Claudio W.) #58911 - [
8b93008dc0
] - doc: update email address for Richard Lau (Richard Lau) #58910 - [
9ff81d21ed
] - doc: update vm doc links (Chengzhong Wu) #58885 - [
ff2efd266d
] - doc: fix links in test.md (Vas Sudanagunta) #58876 - [
5e854e1f61
] - doc: add missing comma inchild_process.md
(ronijames008) #58862 - [
48f5d6d686
] - doc: add guidelines for introduction of ERM support (James M Snell) #58526 - [
80dec9849d
] - (SEMVER-MINOR) doc: add all watch-mode related flags to node.1 (Dario Piotrowicz) #58719 - [
b36fa0fda1
] - doc: fix jsdoc definition of assert.ifError() fn in lib/assert.js (jesh) #58573 - [
cebb93ea12
] - doc: add array type in http request headers (Michael Henrique) #58049 - [
6e6b373da1
] - doc: add missing colon to headers inglobals.md
(Aviv Keller) #58825 - [
1519b75191
] - doc: fixstream.md
section order (Antoine du Hamel) #58811 - [
87f4d078b3
] - (SEMVER-MINOR) fs: add disposable mkdtempSync (Kevin Gibbons) #58516 - [
b378fc3ac0
] - fs: close dir before throwing ifoptions.bufferSize
is invalid (Livia Medeiros) #58856 - [
23bd4d1867
] - fs: special input-1
onchown
,lchown
andfchown
(Alex Yang) #58836 - [
d07ce8e90c
] - fs: throwERR_INVALID_THIS
on illegal invocations (Livia Medeiros) #58848 - [
0d969a66dc
] - inspector: support undici traffic data inspection (Chengzhong Wu) #58953 - [
839b25e371
] - lib: exposesetupInstance
method on WASI class (toyobayashi) #57214 - [
d8f3f649c2
] - lib: fixgetTypeScriptParsingMode
jsdoc (沈鸿飞) #58681 - [
d534706211
] - meta: bump step-security/harden-runner from 2.12.0 to 2.12.2 (dependabot[bot]) #58923 - [
3ec5fe04d0
] - meta: bump github/codeql-action from 3.28.18 to 3.29.2 (dependabot[bot]) #58922 - [
bd4a1a5b06
] - meta: add IlyasShabi to collaborators (Ilyas Shabi) #58916 - [
d29b195b51
] - module: link module with a module request record (Chengzhong Wu) #58886 - [
a78385c4bd
] - module: convert schema-only core module onconvertCJSFilenameToURL
(Alex Yang) #58612 - [
e0de362319
] - module: update tests for combined ambiguous module syntax error (Mert Can Altin) #55874 - [
7f7a833e82
] - os: fix GetInterfaceAddresses memory lieaky (theanarkh) #58940 - [
9623c50b53
] - (SEMVER-MINOR) permission: propagate permission model flags on spawn (Rafael Gonzaga) #58853 - [
efe19b50b6
] - repl: fix eval errors thrown after close throwingERR_USE_AFTER_CLOSE
(Dario Piotrowicz) #58791 - [
c891db1c05
] - repl: improve tab completion on computed properties (Dario Piotrowicz) #58775 - [
797ec4da04
] - (SEMVER-MINOR) sqlite: add support for readBigInts option in db connection level (Miguel Marcondes Filho) #58697 - [
8eecaa264d
] - src: -Wunreachable-code-break in node_config_file.cc (Shelley Vohr) #58901 - [
143379df56
] - src: -Wunreachable-code error in crypto_context.cc (Shelley Vohr) #58901 - [
056a1af197
] - src: fix -Wunreachable-code-return in src/node_contextify.cc (Shelley Vohr) #58901 - [
ba661459f5
] - src: fix -Wunreachable-code in src/node_api.cc (Shelley Vohr) #58901 - [
6af0163dda
] - src: simplify adding fast APIs to ExternalReferenceRegistry (René) #58896 - [
210e608938
] - src: cleanup uv_fs_req before uv_fs_stat on existSync (RafaelGSS) #58915 - [
2445f86dc9
] - src: -Wmismatched-new-delete in debug_utils.cc (Shelley Vohr) #58844 - [
12286c9f64
] - src: use ranges library (C++20) more systematically (Daniel Lemire) #58028 - [
ed966a0215
] - (SEMVER-MINOR) src,permission: add support to permission.has(addon) (Rafael Gonzaga) #58951 - [
dd54910ab1
] - src,permission: enhance permission model debug (Rafael Gonzaga) #58898 - [
94f9424d78
] - test: deflake test-runner-watch-mode-kill-signal (Dario Piotrowicz) #58952 - [
b6ff6c8d20
] - test: add known issue tests for recursive readdir calls with Buffer path (Dario Piotrowicz) #58893 - [
c300f107ac
] - test: add known issue tests for fs.cp (James M Snell) #58883 - [
d8a86a622e
] - test: add tests to ensure that node.1 is kept in sync with cli.md (Dario Piotrowicz) #58878 - [
57c69acb78
] - test: replace.filter()[0]
with.find()
(Livia Medeiros) #58872 - [
67b3f4fbee
] - test: remove reliance on in-treedeps/undici
(Richard Lau) #58866 - [
df85b02a00
] - test: close dirs infs-opendir
test (Livia Medeiros) #58855 - [
692f1aebf0
] - test: update WPT for urlpattern to 84b75f0880 (Node.js GitHub Bot) #58785 - [
3a119be362
] - test: save the config file in a temporary directory (Luigi Pinca) #58799 - [
924cf1ef25
] - test: deflake test-config-file (Luigi Pinca) #58799 - [
b5c7e645c9
] - test_runner: correctly filter --experimental-config-file (Pietro Marchini) #58833 - [
d0faf723c7
] - test_runner: fix timeout not propagated to the child process in run (jakecastelli) #58831 - [
6052d8c1ac
] - test_runner: correct "already mocked" error punctuation placement (Jacob Smith) #58840 - [
e8dd1897d5
] - tools: compile maglev files into v8_compiler if maglev is disabled (Yao Zi) #58861 - [
191396260c
] - tools: bump the eslint group in /tools/eslint with 6 updates (dependabot[bot]) #58921 - [
1e423e0680
] - tools: update inspector_protocol to 69d69dd (Shelley Vohr) #58900 - [
0def4e23b1
] - tools: update gyp-next to 0.20.2 (Node.js GitHub Bot) #58788 - [
adb950cde2
] - tools,doc: move more MDN links to types (Antoine du Hamel) #58930 - [
1ee539a3aa
] - tty: treat emptyNO_COLOR
same as absentNO_COLOR
(Antoine du Hamel) #58074 - [
2b34867ba9
] - v8: fix missing callback in heap utils destroy (Ruben Bridgewater) #58846 - [
a1f4333695
] - vm: expose import phase on SourceTextModule.moduleRequests (Chengzhong Wu) #58829 - [
fe17f5d285
] - (SEMVER-MINOR) watch: add--watch-kill-signal
flag (Dario Piotrowicz) #58719
2.21.0 (2025-07-08)
This release contains performance improvements and bug fixes since the 2.20.3 release. We recommend that you upgrade at the next available opportunity.
Highlighted features in TimescaleDB v2.21.0
- The attach & detach chunks feature allows manually adding or removing chunks from a hypertable with uncompressed chunks, similar to PostgreSQL’s partition management.
- Continued improvement of backfilling into the columnstore, achieving up to 2.5x speedup for constrained tables, by introducing caching logic that boosts throughput for writes to compressed chunks, bringing
INSERT
performance close to that of uncompressed chunks. - Optimized
DELETE
operations on the columstore through batch-level deletions of non-segmentby keys in the filter condition, greatly improving performance to up to 42x faster in some cases, as well as reducing bloat, and lowering resource usage. - The heavy lock taken in Continuous Aggregate refresh was relaxed, enabling concurrent refreshes for non-overlapping ranges and eliminating the need for complex customer workarounds.
- [tech preview] Direct Compress is an innovative TimescaleDB feature that improves high-volume data ingestion by compressing data in memory and writing it directly to disk, reducing I/O overhead, eliminating dependency on background compression jobs, and significantly boosting insert performance.
Sunsetting of the hypercore access method We made the decision to deprecate hypercore access method (TAM) with the 2.21.0 release. It was an experiment, which did not show the signals we hoped for and will be sunsetted in TimescaleDB 2.22.0, scheduled for September 2025. Upgrading to 2.22.0 and higher will be blocked if TAM is still in use. Since TAM’s inception in 2.18.0, we learned that btrees were not the right architecture. The recent advancements in the columnstore—such as more performant backfilling, SkipScan, adding check constraints, and faster point queries—put the columnstore close to or on par with TAM without the storage from the additional index. We apologize for the inconvenience this action potentially causes and are here to assist you during the migration process.
Migration path
do $$
declare
relid regclass;
begin
for relid in
select cl.oid from pg_class cl
join pg_am am on (am.oid = cl.relam)
where am.amname = 'hypercore'
loop
raise notice 'converting % to heap', relid::regclass;
execute format('alter table %s set access method heap', relid);
end loop;
end
$$;
Features
- #8081 Use JSON error code for job configuration parsing
- #8100 Support splitting compressed chunks
- #8131 Add policy to process hypertable invalidations
- #8141 Add function to process hypertable invalidations
- #8165 Reindex recompressed chunks in compression policy
- #8178 Add columnstore option to
CREATE TABLE WITH
- #8179 Implement direct
DELETE
on non-segmentby columns - #8182 Cache information for repeated upserts into the same compressed chunk
- #8187 Allow concurrent Continuous Aggregate refreshes
- #8191 Add option to not process hypertable invalidations
- #8196 Show deprecation warning for TAM
- #8208 Use
NULL
compression for bool batches with all null values like the other compression algorithms - #8223 Support for attach/detach chunk
- #8265 Set incremental Continous Aggregate refresh policy on by default
- #8274 Allow creating concurrent continuous aggregate refresh policies
- #8314 Add support for timescaledb_lake in loader
- #8209 Add experimental support for Direct Compress of
COPY
- #8341 Allow quick migration from hypercore TAM to (columnstore) heap
Bugfixes
- #8153 Restoring a database having NULL compressed data
- #8164 Check columns when creating new chunk from table
- #8294 The "vectorized predicate called for a null value" error for WHERE conditions like
x = any(null::int[])
. - #8307 Fix missing catalog entries for bool and null compression in fresh installations
- #8323 Fix DML issue with expression indexes and BHS
GUCs
enable_direct_compress_copy
: Enable experimental support for direct compression duringCOPY
, default: offenable_direct_compress_copy_sort_batches
: Enable batch sorting during direct compressCOPY
, default: onenable_direct_compress_copy_client_sorted
: Correct handling of data sorting by the user is required for this option, default: off
v1.35.2
- #17248
agent
Add missing config flags for migrate command - #17240
disk-buffer
Correctly reset the mask after adding to an empty buffer - #17284
disk-buffer
Expire metric tracking information in the right place - #17257
disk-buffer
Mask old tracking metrics on restart - #17247
disk-buffer
Remove empty buffer on close - #17285
inputs.gnmi
Avoid interpreting path elements with multiple colons as namespace - #17278
inputs.gnmi
Handle base64 encoded IEEE-754 floats correctly - #17258
inputs.kibana
Support Kibana 8.x status API format change - #17214
inputs.ntpq
Fix ntpq field misalignment parsing errors - #17234
outputs.microsoft_fabric
Correct app name - #17291
outputs.nats
Avoid initializing Jetstream unconditionally - #17246
outputs
Retrigger batch-available-events correctly
- #17217
deps
Bump github.com/Azure/azure-sdk-for-go/sdk/messaging/azeventhubs from 1.3.2 to 1.4.0 - #17226
deps
Bump github.com/ClickHouse/clickhouse-go/v2 from 2.37.0 to 2.37.1 - #17265
deps
Bump github.com/ClickHouse/clickhouse-go/v2 from 2.37.1 to 2.37.2 - #17268
deps
Bump github.com/Masterminds/semver/v3 from 3.3.1 to 3.4.0 - #17271
deps
Bump github.com/SAP/go-hdb from 1.13.7 to 1.13.9 - #17232
deps
Bump github.com/alitto/pond/v2 from 2.3.4 to 2.4.0 - #17231
deps
Bump github.com/apache/arrow-go/v18 from 18.3.0 to 18.3.1 - #17223
deps
Bump github.com/aws/aws-sdk-go-v2/config from 1.29.15 to 1.29.17 - #17220
deps
Bump github.com/aws/aws-sdk-go-v2/credentials from 1.17.69 to 1.17.70 - #17227
deps
Bump github.com/aws/aws-sdk-go-v2/service/cloudwatchlogs from 1.50.3 to 1.51.0 - #17262
deps
Bump github.com/aws/aws-sdk-go-v2/service/dynamodb from 1.43.4 to 1.44.0 - #17224
deps
Bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.225.1 to 1.225.2 - #17260
deps
Bump github.com/aws/aws-sdk-go-v2/service/ec2 from 1.226.0 to 1.227.0 - #17264
deps
Bump github.com/docker/docker from 28.2.2+incompatible to 28.3.0+incompatible - #17256
deps
Bump github.com/lxc/incus/v6 from 6.13.0 to 6.14.0 - #17272
deps
Bump github.com/microsoft/go-mssqldb from 1.8.2 to 1.9.2 - #17261
deps
Bump github.com/nats-io/nats-server/v2 from 2.11.4 to 2.11.5 - #17266
deps
Bump github.com/peterbourgon/unixtransport from 0.0.5 to 0.0.6 - #17229
deps
Bump github.com/prometheus/common from 0.64.0 to 0.65.0 - #17267
deps
Bump github.com/redis/go-redis/v9 from 9.10.0 to 9.11.0 - #17273
deps
Bump go.opentelemetry.io/collector/pdata from 1.34.0 to 1.35.0 - #17219
deps
Bump google.golang.org/api from 0.237.0 to 0.238.0 - #17263
deps
Bump google.golang.org/api from 0.238.0 to 0.239.0 - #17218
deps
Bump k8s.io/api from 0.33.1 to 0.33.2 - #17228
deps
Bump k8s.io/client-go from 0.33.1 to 0.33.2
Arch | Platform | Package | SHA256 |
---|---|---|---|
arm64 | CentOS | telegraf-1.35.2-1.aarch64.rpm | 2c011c1f9fe7d610840c56e11d86f15d3606aab12ccc521ff4d34f75215ef841 |
armel | CentOS | telegraf-1.35.2-1.armel.rpm | 8a95bca3255a36e90f951dd6c60b6b1569c32bbe1b1ff81d896e24fac4220eba |
armv6hl | CentOS | telegraf-1.35.2-1.armv6hl.rpm | d1728a206fbfcb56e04849bd09129cc5ddb48b9eddb95a14e5f194ad3f0d5ae7 |
i386 | CentOS | telegraf-1.35.2-1.i386.rpm | f4a2b0cdd358d8e88a3a4eb34f44813a7cbc5dd6dee0882aac8c6c128a028713 |
loong64 | CentOS | telegraf-1.35.2-1.loong64.rpm | 51f31b93540854b4d5e8d588ffe28070df7aeea7fb7b87c8ad3c4fa9f5856dc5 |
ppc64le | CentOS | telegraf-1.35.2-1.ppc64le.rpm | 8f5024a691953cee1529dcc2c7679b7ad5cea61a3d79ff5e746fd9796f1eb3f3 |
riscv64 | CentOS | telegraf-1.35.2-1.riscv64.rpm | f9d78db522b82b34a13c98f781a1b3d771845235a1e9db32c8b9e9807147fc8e |
s390x | CentOS | telegraf-1.35.2-1.s390x.rpm | 253d8db47305c11ec9b8041bd7cdff838b75bdace73409c96040466146605139 |
amd64 | CentOS | telegraf-1.35.2-1.x86_64.rpm | fb19a071870303202da570e5f1ba16164a9dc5b1f5879f2620735047eb9aa7be |
amd64 | macOS | telegraf-1.35.2_darwin_amd64.dmg | f6585486b894f21707cb637f9d25e7376882f6546284989c80bc9e708a96bd04 |
amd64 | macOS | telegraf-1.35.2_darwin_amd64.tar.gz | 72bcb472af2888504a3d07bd5d7d674fcb89d1b7f828f3ac1e2458dd56cba5a1 |
arm64 | macOS | telegraf-1.35.2_darwin_arm64.dmg | 71af2906b3f2f6b90e2dc4964c456e85a5eb023841d93cda9c15d8eff8c72a39 |
arm64 | macOS | telegraf-1.35.2_darwin_arm64.tar.gz | 371b24355994941009d5710f07e848029efac2ac1a8394fd6422a501c6b37527 |
amd64 | FreeBSD | telegraf-1.35.2_freebsd_amd64.tar.gz | e69dced8c66523c16f30d67a4d90a760c21302a4cc33bf5095f2836350075459 |
armv7 | FreeBSD | telegraf-1.35.2_freebsd_armv7.tar.gz | 70efc75b0e9017b0e2d6c235b56b1cc76c92f57dfb96284af65f8a4a77fbd28c |
i386 | FreeBSD | telegraf-1.35.2_freebsd_i386.tar.gz | 804be635be764cb3bd6c37000eff44882a5a43c434213d2905d4e55bfd284b98 |
amd64 | Linux | telegraf-1.35.2_linux_amd64.tar.gz | 655b49f7592752a5e035209f817f17bc60a036c4213778d1fb4278c159ca6cb4 |
arm64 | Linux | telegraf-1.35.2_linux_arm64.tar.gz | c780660cf570d5016c12655b66b99c2e3ed548d92ad063e203cf783f8b177146 |
armel | Linux | telegraf-1.35.2_linux_armel.tar.gz | 918a27c65f4fcbf01a994405ddc30bcdbe779ea37b6356f046318a26cc48ed99 |
armhf | Linux | telegraf-1.35.2_linux_armhf.tar.gz | e65aa6842a978f6f30af0fb27ca133389d953ac1ace35ab5aab37289e6427a72 |
i386 | Linux | telegraf-1.35.2_linux_i386.tar.gz | efa5d4649f97a076252783dbf63848e161e74103698b183a733522335f5536f6 |
loong64 | Linux | telegraf-1.35.2_linux_loong64.tar.gz | 990d1430ea345a18710cc771b29c482a7b4be70eb1b4b937f0cc3dcb89d4b18b |
mips | Linux | telegraf-1.35.2_linux_mips.tar.gz | 9701e237e150086e44f4b2271f4ddb791af25b04096a536980b9d1edb7e63730 |
mipsel | Linux | telegraf-1.35.2_linux_mipsel.tar.gz | 26e9654a61e05576e46623581d41bb41cdebfd8b7abdeb70c3a92f7d901506cf |
ppc64le | Linux | telegraf-1.35.2_linux_ppc64le.tar.gz | 42f2937fd528941fed008ae9da4816de266d4e913e91b25ab9186e8b8e7706a7 |
riscv64 | Linux | telegraf-1.35.2_linux_riscv64.tar.gz | a41407aa5bcb453a5841ceb359abf12bb80b2bd1d2da14fa429aec6309baebb1 |
s390x | Linux | telegraf-1.35.2_linux_s390x.tar.gz | 3a41eb8111ce96742123d20ef4c94760b54bb6b7cb329786b754aa17dc041320 |
amd64 | Windows | telegraf-1.35.2_windows_amd64.zip | b5e07f6c19f288be65cccaa76ef8f8f2647695ac1a7fbe996d5c0dfd3d522f1e |
arm64 | Windows | telegraf-1.35.2_windows_arm64.zip | 2375f0c308c7e127cdb76837e683d034de31e405e3f15226a96d6f78a7bd788d |
i386 | Windows | telegraf-1.35.2_windows_i386.zip | b7ff391f897b232371b4480b905fc477bc71bd7f68b66c52e3f0c199262260f7 |
amd64 | Debian | telegraf_1.35.2-1_amd64.deb | 481cf767d72dac7d9e2b95dc5f48071ed94a44bf755418784e49af3dbe07b5ee |
arm64 | Debian | telegraf_1.35.2-1_arm64.deb | 53980ea7ac1e8d43c104a004904c8ad278744fe90931e53d8ac10df09eb6abb6 |
armel | Debian | telegraf_1.35.2-1_armel.deb | 22fb0b4f0c82431650fb49dddba304910cc4051f8ae58016fa536e09472e31df |
armhf | Debian | telegraf_1.35.2-1_armhf.deb | 8031d9b93051d348fc36f64abb1ea116bcbc800a42ef23e335d1ec9c23aeed83 |
i386 | Debian | telegraf_1.35.2-1_i386.deb | b3debbf10ec031953c06a1e4d3121db2bae3bb841a71acc29a0012d02d626170 |
loong64 | Debian | telegraf_1.35.2-1_loong64.deb | 4a253515b744fae200097e2c968b89b4f41596a268f0c145cad85087525ce9ca |
mips | Debian | telegraf_1.35.2-1_mips.deb | db737d001cba16e0a5b9266fccfa726c8361851438caf4d353310ed6c300935c |
mipsel | Debian | telegraf_1.35.2-1_mipsel.deb | 5edf8c371930c3d517e048ece3b99bc978fdf983fdce1ecc51f58abc28150146 |
ppc64el | Debian | telegraf_1.35.2-1_ppc64el.deb | 10d9656631636b6dfd3b41854588c90a4e4bc1a5e7e22ca32c5b30c692e14bf2 |
riscv64 | Debian | telegraf_1.35.2-1_riscv64.deb | 5fdc411164ff9394dc238331348216549531478b34213a7f42d8c8129c263d6f |
s390x | Debian | telegraf_1.35.2-1_s390x.deb | b5c1be05512c6ed0126f7f7fec9d8847f6b4296ee1e5e33c1c8cb7c596151aeb |
v1.16.0-rc.0 🦚
[!WARNING] Since this is a release candidate (RC), we do NOT recommend using it in a production environment. Is something not working as expected? We welcome bug reports and feedback about new features. ⚠ In particular, upgrading from a database containing embeddings is known not to work in RC.0 ⚠
Meilisearch v1.16 introduces two core features, multimodal embeddings allowing to index images, text and other formats; and the Export/Transfer of documents between instances easing the migration of a local Meilisearch into the cloud!
Meilisearch now allows conveniently indexing images, text and other formats in documents, and to retrieve documents by searching with an image or a text query.
This new feature leverages multimodal embedders to provide a common semantic representation for images, texts, and any other piece of data in a format supported by the chosen model.
As an example, the sample movies
dataset contains movie descriptions and links to movie posters. Using this new feature, it is possible to use text to search both in the descriptions and the posters, or to use an image to search for similar looking posters, or movies with a description matching the query image.
To use multimodal embeddings, start by enabling the multimodal
experimental feature:
curl $MEILISEARCH_URL/experimental-features -X PATCH -H 'Content-type: application/json' -d '{"multimodal": true}'
Then pick an embedder service that supports multimodal such as cohere or VoyageAI to start building the embedding configuration.
An example configuration for VoyageAI to index the description and poster from the movies database, and to search by text or image, might look like the following:
Then, to search by poster (image URL):
// POST /indexes/$INDEX_NAME/search
{
"media": {
"poster": "https://image.tmdb.org/t/p/w500/6FfCtAuVAW8XJjZ7eWeLibRLWTw.jpg"
},
"hybrid": {
"embedder": "voyage",
// semanticRatio is specified here for explicitness,
// but it would default to 1.0 if omitted, as we don't have a text query
// (no "q") here.
"semanticRatio": 1.0
}
}
To search by image data (encoded as base64):
// POST /indexes/$INDEX_NAME/search
{
"media": {
"image": {
"mime": "image/jpeg",
// image bytes encoded as base64
"data": "/9j/4AAQSkZJRgABAQAAAQABAAD/2w..."
}
"hybrid": {
"embedder": "voyage",
}
}
To search by text (performing a hybrid search):
// POST /indexes/$INDEX_NAME/search
{
// note that since the model is multimodal, this will also compare the produced embedding
// with the poster images from movie, so describing a poster image here could find the
// associated movie
"q": "A movie with lightsabers in space",
"hybrid": {
"embedder": "voyage",
"semanticRatio": 0.5
}
}
For more information about this feature, please refer to its public usage page
Done by @dureuill in #5596
Meilisearch now allows to transfer documents from an instance to another without having to create a dump or a snapshot. This feature will ease the migration to the Cloud by streaming all the documents from a local instance to a cloud one.
We expose one single route on the instance which accepts a bunch of parameters.
url
: Where do we want to send our settings and documents.apiKey
: (optional) The API key to have the rights to send those requests. Usually the master key of the remote machine.payloadSize
: (optional) A human readable size defining the size of the payloads to send. Defaults to 50 MiB.indexes
: (optional) A set of patterns of matching the indexes you want to export. If not defined, defaults to all indexes without filter.filter
: (optional) A filter defining the subset of documents to actually export.overrideSettings
: (optional, default false) When false, will not set settings nor update the primary key on indexes that already exist on the remote instance. Will still send the documents
POST: /export
{
"url": "http://localhost:7711",
"apiKey": null,
"payloadSize": "123 MiB",
"indexes": {
"*": {
"filter": null,
"overrideSettings": true
}
}
}
Response:
{
"taskUid": 2,
"indexUid": null,
"status": "enqueued",
"type": "export",
"enqueuedAt": "2025-06-26T12:54:10.785864Z"
}
One task can retry requests in case of failure (not indefinitely, though) and can also be canceled. However, keep in mind that canceling this export task will not cancel tasks received by the targeted Meilisearch instance.
Done by @kerollmops with the help of @mubelotix in #5670
- Added support for nested wildcards in
attributes_to_search_on
by @lblack00 in https://github.com/meilisearch/meilisearch/pull/5548 - Improve the support of geo field extraction from the documents by @nnethercott in https://github.com/meilisearch/meilisearch/pull/5592
- Use all CPUs when importing dumps by @nnethercott in https://github.com/meilisearch/meilisearch/pull/5527
- Display the last embedder error live in batches by @Mubelotix in https://github.com/meilisearch/meilisearch/pull/5707
- Settings indexer edition 2024 by @ManyTheFish in https://github.com/meilisearch/meilisearch/pull/5687
- Request fragments by @dureuill in https://github.com/meilisearch/meilisearch/pull/5596
- Improve the performance when managing single-typo words by @dureuill in https://github.com/meilisearch/meilisearch/pull/5551
- Fix distinct for hybrid search by @dureuill in https://github.com/meilisearch/meilisearch/pull/5614
- Fix a bug related to Cyrillic having different typo tolerance due to byte counting bug by @arthurgousset in https://github.com/meilisearch/meilisearch/pull/5617
- Fix Gemini
base_url
when used with OpenAI clients by @diksipav in https://github.com/meilisearch/meilisearch/pull/5692 - Remove Gemini from the LLM-providers list due to incompatibility with OpenAI by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5708
- Fix the environment variable name of the experimental limit batched tasks total size feature by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5705
- Fix
disableOnNumbers
reset by @Nymuxyzo in https://github.com/meilisearch/meilisearch/pull/5702 - Make sure to recover from missing update files by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5683
- Add analytics to the chat completions by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5709
- Dependencies updates
- Remove old dependencies by @Mubelotix in https://github.com/meilisearch/meilisearch/pull/5689
- Upgrade dependencies by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5686
- Bump the mini-dashboard to v0.2.20 by @Kerollmops in https://github.com/meilisearch/meilisearch/pull/5728
- CIs and tests (34 PRs, one folk, yes!)
- perf: Faster IT tests - stats.rs by @martin-g in https://github.com/meilisearch/meilisearch/pull/5572
- perf: Faster index::get_index IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5578
- tests: Assert succeeded/failed for the index::delete_index IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5580
- tests: Faster index::search::mod IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5584
- perf: Faster index::update_index IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5579
- perf: Faster integration tests for add_documents.rs by @martin-g in https://github.com/meilisearch/meilisearch/pull/5574
- tests: Faster search::errors IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5599
- tests: Faster search::locales IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5601
- tests: Faster search::matching_strategy IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5602
- tests: search::pagination IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5604
- tests: Faster search::restricted_searchable IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5605
- tests: Faster settings::distinct IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5606
- tests: Faster settings::proximity_settings IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5609
- tests: Faster settings::tokenizer_customization IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5610
- tests: Faster search::facet_search IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5600
- tests: Faster settings::get_settings IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5607
- tests: Faster vector::binary_quantized IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5618
- tests: Faster search::distinct IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5620
- tests: Faster similar::errors IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5621
- tests: Faster documents::get_documents IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5624
- tests: Faster documents::delete_documents IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5619
- tests: Faster search::geo IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5623
- tests: Faster search::hybrid IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5625
- tests: Faster tasks::mod IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5615
- tests: Faster stats::mod IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5611
- tests: Faster search::filters IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5622
- tests: Use Server::wait_task() instead of Index::wait_task() in search:: by @martin-g in https://github.com/meilisearch/meilisearch/pull/5700
- tests: Use Server::wait_task() instead of Index::wait_task() in index:: by @martin-g in https://github.com/meilisearch/meilisearch/pull/5698
- tests: Use Server::wait_task() instead of Index::wait_task() in settings:: by @martin-g in https://github.com/meilisearch/meilisearch/pull/5699
- tests: Use Server::wait_task() instead of Index::wait_task() in documents:: by @martin-g in https://github.com/meilisearch/meilisearch/pull/5697
- tests: Faster documents::update_documents IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5682
- tests: Faster similar::mod IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5680
- tests: Faster document::errors IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5677
- tests: Faster settings::prefix_search_settings IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5681
- tests: Faster search::multi IT tests by @martin-g in https://github.com/meilisearch/meilisearch/pull/5603
- Misc
- Ignore flaky test by @dureuill in https://github.com/meilisearch/meilisearch/pull/5627
- ci: Use
GITHUB_TOKEN
secret for thedb change check
workflow by @martin-g in https://github.com/meilisearch/meilisearch/pull/5632 - chore: Fix English grammar in SearchQueue's comments by @martin-g in https://github.com/meilisearch/meilisearch/pull/5642
- Typo fix by @mcmah309 in https://github.com/meilisearch/meilisearch/pull/5589
- docs: Recommend using a custom path for the benches' data by @martin-g in https://github.com/meilisearch/meilisearch/pull/5672
❤️ Thanks again to our external contributors:
- Meilisearch: @martin-g, @lblack00, @mcmah309, @nnethercott, @arthurgousset, @Mubelotix, @diksipav, @Nymuxyzo
- Arroy: @nnethercott
3.93
One of common feedback messages from new users is SeaweedFS needs a management UI. This usually requires a lot of frontend UI engineer effort. Recently, I started to use AI to generate UI code, which works fairly well. In this release, I added an initial version of weed admin
. Try it out!
The AI coding cost is not trivial. If you want to support SeaweedFS, welcome to use github or Patreon make some contributions!
- Admin UI
- Add initial version of admin component, WIP by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6928
- Add credential storage by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6938
- weed admin UI dynamically show columns by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6939
- Admin UI add maintenance menu by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6944
- Volume Server
- [volume] refactor and add metrics for flight upload and download data limit condition by @kmlebedev in https://github.com/seaweedfs/seaweedfs/pull/6920
- S3 API
- fix: s3 return BadDigest by @kmlebedev in https://github.com/seaweedfs/seaweedfs/pull/6714
- Cloud Tier
- update s3 session cache key by @ludwigxia in https://github.com/seaweedfs/seaweedfs/pull/6923
- Remote Cache
- enhance remote.cache to sync meta only, delete local extra by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6941
- Misc
- Changes logging function by @Werberus in https://github.com/seaweedfs/seaweedfs/pull/6919
- Improve lock ring by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6921
- add telemetry by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/6926
Full Changelog: https://github.com/seaweedfs/seaweedfs/compare/3.92...3.93
8.0.3
Update urgency: SECURITY
: There are security fixes in the release.
- (CVE-2025-32023) Fix out-of-bounds write in
HyperLogLog
commands - (CVE-2025-48367) Retry accepting other connections even if the accepted connection reports an error
- #14065
VSIM
: Add newWITHATTRIBS
to return the JSON attribute associated with an element
- #14085 A short read may lead to an exit() on a replica
- #14092 db->expires is not defragmented