# Tenzir Node v5.21.0

This release improves the stability of pipelines by applying backpressure more effectively, ensuring upstream components slow down before overwhelming subscribers. It also enhances daily operations by improving parquet reliability, adding Base58 support, and extending the built-in OCSF operators and functions to support the newly released OCSF 1.7.0.

## 🚀 Features

### Improved Encoding and Decoding Support

Nov 19, 2025 · [@IyeOnline](https://github.com/IyeOnline) · [#5572](https://github.com/tenzir/tenzir/pull/5572)

We have added two new functions: `encode_base58` and `decode_base58`. As the names imply, these Base58 encode/decode `string` or `blob` values, just like the already existing functions for Base64, Hex or URL encoding.

With this change, we also enabled the usage of all encoding and decoding functions on `secret` values.

### Support for OCSF v1.7.0

Nov 19, 2025 · [@jachris](https://github.com/jachris) · [#5580](https://github.com/tenzir/tenzir/pull/5580)

Tenzir now supports the newly released OCSF version 1.7.0.

## 🔧 Changes

### Parse time to UNIX epoch

Nov 19, 2025 · [@raxyte](https://github.com/raxyte) · [#5571](https://github.com/tenzir/tenzir/pull/5571)

The `parse_time()` function would earlier default to `1900` when the year was unspecified. This has now been changed to `1970` to match the assumptions about epoch in other parts of the language.

### Easier multi-key deduplication

Nov 14, 2025 · [@mavam](https://github.com/mavam) · [#5570](https://github.com/tenzir/tenzir/pull/5570)

We now support multiple keys for deduplication, e.g., `deduplicate a, b.c, d` is now equivalent to the previously unwieldy expression `deduplicate {x: a, y: b.c, z: d}`.

## 🐞 Bug Fixes

### Improved parquet support

Nov 19, 2025 · [@IyeOnline](https://github.com/IyeOnline) · [#5579](https://github.com/tenzir/tenzir/pull/5579)

We fixed a crash when performing some operations on data read from external parquet files, such as Amazon Security Lake.

### Backpressure in `publish` and `subscribe`

Nov 19, 2025 · [@jachris](https://github.com/jachris) · [#5568](https://github.com/tenzir/tenzir/pull/5568)

Previously, the backpressure mechanism in `publish` and `subscribe` was not working as intended. Thus, publishing pipelines continued processing data even when downstream consumers were lagging far behind. This is now fixed. As a result, memory consumption for pipelines connected by `publish` and `subscribe` is reduced significantly in those cases.

### Fixed a race in concurrent function application

Nov 19, 2025 · [@tobim](https://github.com/tobim) · [#5578](https://github.com/tenzir/tenzir/pull/5578)

We fixed a race condition in case multiple pipelines used the same transformation on the same data, such as string manipulations in where clauses to filter the input. The bug caused those pipelines to fail sporadically.

### Gracefully handle server errors in the web plugin

Nov 19, 2025 · [@tobim](https://github.com/tobim) · [#5577](https://github.com/tenzir/tenzir/pull/5577)

The node now prints a proper error message in case the builtin web server can’t start because the port is already in use.

[ Download on GitHub ](https://github.com/tenzir/tenzir/releases/tag/v5.21.0)

[Get the release artifacts and source code.](https://github.com/tenzir/tenzir/releases/tag/v5.21.0)