# linstor-server 1.34.0 release

**URL:** https://forums.linbit.com/t/linstor-server-1-34-0-release/1235
**Category:** Release Announcements
**Tags:** kubernetes, drbd
**Created:** [June 30, 2026, 8:31am UTC](https://forums.linbit.com/t/linstor-server-1-34-0-release/1235 "2026-06-30T08:31:52Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![rp9](https://yyz1.discourse-cdn.com/flex003/user_avatar/forums.linbit.com/rp9/32/38_2.png) [@rp9](https://forums.linbit.com/u/rp9)
#### Post date: [June 30, 2026, 8:31am UTC](https://forums.linbit.com/t/linstor-server-1-34-0-release/1235/1 "2026-06-30T08:31:52Z")

</div>

Hi!

Here is the final release of Linstor 1.34.0, we have fixed a few more bugs  
and sneaked in a nice regex filtering feature for all list commands.

Biggest new feature of this release is API token authentication, if  
enabled, it would restart the controller with a self-signed HTTPS  
certificate and any further requests need to provide a HTTP Bearer  
token in the headers. If setup through the client most of this will  
automatically done in the background, plugins are already released  
or will be released soon with support for this new feature.

Another "feature" is that we finally improved our timeout checks for  
external commands.  
As long as the external commands report some I/O usage, they will not  
strictly time out after 45s.

Then we added a new Clone/BalanceAfterClone property, that allows the  
controller to place an additional resource during cloning. This will  
help distribute space in situation where you have a template that is  
often cloned from so it doesn't always end up on the same nodes, in  
the beginning it will take an additional resource, but as soon as the  
BalanceResourceTask runs it will remove the excessive resource from  
the most used node.

We also added support for DRBD's variable bitmap block size,  
exposed through a new BitmapBlockSizeNewResource property.  
Instead of the fixed 4 KiB granularity, each bitmap bit can now cover  
up to 1 MiB,  
which noticeably shrinks the DRBD metadata on very large volumes  
at the cost of a coarser resync granularity — it needs drbd-utils 9.33+ and  
only takes effect for newly created resources.

Linstor can now create diskless resources as DRBD clients,  
i.e. a diskless that intentionally holds no quorum vote. This keeps  
quorum balanced  
in stretched/multi-datacenter clusters: a diskless client running  
where the diskful peers already live no longer makes Linstor drop  
the dedicated tiebreaker in the third site — resources created via  
make-available  
now become clients automatically, and you can switch a resource  
between plain diskless  
and client through toggle-disk or the resource modify API.

And finally Linstor now will detect blocked ports and add those ports  
to a blocked range list property, it is now also possible to define  
multiple TCP port ranges.

Also the linstor-controller is no longer started as root user, instead  
we leverage the DynamicUser functionallity from systemd.

To mention it again, this build requires now java-21 AND we finally  
removed ETCD support from this version on.

## [1.34.0] - 2026-06-29

### Added

- REST list endpoints now support regular-expression matching in their  
name filters (`nodes`, `resources`, `resource_definitions`,  
`resource_groups`, `storage_pools`, `snapshots`) and in `props`  
filters (on both the property key and value); the `props` filter is  
now also available on the per-node storage-pool and per-resource  
volume list endpoints

### Fixed

- Fixed ZFS clone deletion not cleaning up the clone's source snapshot  
that was marked for deletion, leaving orphaned `CF_*` snapshots behind  
after the cloned resource was deleted  
- Fixed DRBD auto verify algorithm being recomputed over an incomplete  
node set while satellites reconnect, which could change the algorithm  
and force an already connected resource into StandAlone without  
automatic reconnect  
- Fixed implementation error ("attempt to replace an active transMgr")  
during L2L backup shipping when a new shipment created its snapshot or  
temporary satellite-remote concurrently with the cleanup of a finished  
shipment deleting its temporary satellite-remote  
- Fixed implementation error ("attempt to replace an active transMgr")  
when creating or modifying a resource group concurrently with a backup  
restore/shipment that moves a resource definition into its target  
resource group  
- Fixed BalanceResources counting an unhealthy diskful and possibly  
deleting therefore a healthy diskful  
- Fixed implementation error during DRBD .res file regeneration when  
the existing on-disk file was empty or truncated, which aborted the  
regeneration instead of rewriting the file  
- Fixed regular snapshot restore not setting DRBD\_INITIALIZED on the  
restored volume definition, which could cause spurious metadata  
re-creation and split-brain  
- Another attempt to fix rare bug causing "shipping in progress" that  
can only be cleared by restarting the controller  
- Release the target-side restore-lock when a backup receive is  
aborted (both while still preparing and while actively shipping), so a  
stuck "backup is currently being restored" no longer blocks further  
shipments to a resource until the controller is restarted  
- Fixed shipmentFailed always being false in  
AbsBackupShippingService.waitForSnapCreateFinished  
- Fixed NullPointerException on the satellite when concurrently  
deleting multiple volumes with a `FileSystem/Type` property, which  
marked the resource as failed and returned the delete as an internal  
error

## [1.34.0-rc.1] - 2026-05-28

### Added

- Toggle-disk can now be retried or aborted.  
- Added export-db API  
- Satellites report platform and OS variant and Controller exposes  
that on the REST API.  
- Added property "ExtCmd/WaitTimeout"  
- Added property "ExtCmd/TermTimeout"  
- Added property "ExtCmd/KillTimeout"  
- Added property "ExtCmd/IoStallTimeout"  
- Added property "ExtCmd/IoPollInterval"  
- Added "Linstor/Drbd/OutsideAddress" property for DRBD's  
outside-address for setups using a NAT  
- Added optional alternative suffixes for external files  
- Added status check (current path + content as expected) for external files  
- Added property "Rest/AutoHTTPs", if enabled will automatically  
create a SSL certificate and re-start SSL server  
- Added token authentication API and implementation, if enabled only  
allows Authentication Bearer token access  
- Added property "Clone/DdBlocksize" to configure the DD clone blocksize used  
- Added "BalanceResourcesSkipDiskLimit" property to skip balancing  
resources with more than X skipDisk resources (default 1)  
- Added property "Autoplacer/MinThinFreeSpace" that disqualifies  
storPools with less free space than specified  
- Added linstor-config disable-token-auth command  
- Property Clone/BalanceAfterClone to autoplace an extra diskful  
resource after a clone operation  
- Property Snapshot/BalanceAfterRestore to autoplace an extra diskful  
resource after a snapshot restore  
- Added property "Luks/AllowDiscards" to enable discard/TRIM  
pass-through on LUKS volumes; when LUKS sits below DRBD,  
rs-discard-granularity is also set automatically  
- Added "Client" as DRBD state (non-voting diskless peer)  
- Added property "TcpPortsBlocked" on node level

### Changed

- SOS report now uses export-db instead of non-JSON database dump  
- Minimum java version is now java-21, please upgrade if you want to  
continue building/running LINSTOR.  
- DRBD: create-md now only times out if there was no IO for 45s  
- mkfs: mkfs.ext4 and mkfs.xfs now only time out if there was no IO for 45s  
- Moved old property "ExtCmdWaitTimeout" -\> "ExtCmd/WaitTimeout"  
- SOS report: 'tar' command now only times out if there was no IO for 45s  
- Don't call shred on ZFS devices as those are guaranteed to always read 0  
- Upated debian package compat version to 11  
- linstor-controller.service: switch to DynamicUser (i.e., execute as  
non-root user).  
- Systemd-notify: Use SDNotify library instead of calling "systemd-notify"  
- Thick LVM: New volumes are now placed on the least-used PVs by  
default. This behavior can be customized via the new  
"StorDriver/LvcreatePvSelection" property.  
- Check for valid storage pool names on resource-group select filter  
- Controller now ignores case when checking if a NetCom is enabled or not  
- Default evict timeout was increased from 1h to 12h  
- Property "TcpPortAutoRange" can now also be set on node level

### Removed

- ETCD database support is now removed, please convert to SQL or CRD  
DB, before upgrade  
- Removed K8s migrations older than 2023 / LINSTOR v1.21.0-rc1  
- Removed SQL migrations older than 2023 / LINSTOR v1.21.0-rc1

### Fixed

- Fixed incorrect default LUKS2 header size calculation  
- Parse errors during ctrl -\> stlt authentication now result in  
"AUTHENTICATION\_ERROR" instead of "OFFLINE" (regression introduced in  
1.32.0-rc.1)  
- Fixed free space reporting of thin storage spaces (Windows) pool  
- Fixed race condition where after a reconnect storage pools might not  
show correct capacities and freespaces.  
- Fixed PREPARE\_SHIPPING backups didn't count as active shippings  
- If a satellite cannot decrypt a LUKS key it no longer goes into  
FULLSYNC\_FAILED, but just marks the resource to have corrupted crypt  
key  
- Fixed auto-rs-discard-granularity staying set on devices that don't  
support discards (e.g. LUKS without AllowDiscards)  
- Throw a CriticalError(restart) if a JDK spawn helper exception was  
caught (usually a JDK version mismatch)  
- Fixed bug where taking a snapshot on a not-only-DRBD resource could  
hang indefinitely  
- Attempt to fix rare bug causing "shipping in progress" that can only  
be cleared by restarting the controller  
- Fixed rare race condition when changing the LUKS passphrase  
- Fixed bug where trying to start a backup shipment of a rsc that  
isn't UpToDate lead to an AccessToDeletedDataException

[https://pkg.linbit.com//downloads/linstor/linstor-server-1.34.0.tar.gz](https://pkg.linbit.com//downloads/linstor/linstor-server-1.34.0.tar.gz)

Linstor PPA:  
[https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack](https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack)

Cheers,  
Rene
