Mailing List Archive

drbd-reactor v1.2.0-rc.1
Dear DRBD users,

this is first RC1 of the upcoming drbd-reactor version 1.2.0.

There are two noteworthy changes in this release:

- The promoter plugin used a shell wrapper script shipped in drbd-utils
to handle OCF agents. This wrapper was replaced by a proper Rust
binary. The advantage is that we can (re)use that in our Windows port.
Every shell script re-written in a proper programming language is a
benefit on its own.

- So far it was possible to specify an "id" for plugins in their
configuration snippet and that was the handle to decide which plugin
instances got stopped, kept alive, or started on drbd-reactor reloads
(systemctl reload/kill -HUP). Now we keep hashes of the configuration
structs (i.e., they are trait Hash) and reloading changed plugins just
behaves like expect: No weird "id"s, changed plugins restart, new get
started, unchanged ones stay, the ones now without a config get
stopped. The "id" fields in configs are now marked as deprecated
(i.e., specifying them prints a warning in the log) and don't have any
special meaning anymore. Note that they still contribute to the hash
of config struct. In order to make the config structs trait Hash we
had to change the 'sleep-before-promote-factor' from a f32 to a u32. I
guess this setting is that unknown and rarely used that we can do
that.

In the best case you don't even notice the changes, but get an improved
behavior on reactor reloads.

If there are not reported issues, the final release will follow in about
a week from now.

GIT: https://github.com/LINBIT/drbd-reactor/commit/b9f104e55e4550865b059571e64615c92d0c4c18
TGZ: https://pkg.linbit.com//downloads/drbd/utils/drbd-reactor-1.2.0-rc.1.tar.gz
PPA: https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack

Regards, rck

Changelog:
[ Moritz "WanzenBug" Wanzenb?ck ]
* prometheus: start server in plugin constructor
* ctl: ignore already unmasked targets
* plugin: unify starting of plugins

[ Roland Kammerer ]
* prometheus: rm unused import
* ocf-wrapper: rewrite in Rust
* core,plugins: auto generate IDs
* core,plugins,ctl: deprecate IDs