Download the release on GitHub.
Features
Section titled “Features”Load plugin schemas after built-in schemas
Section titled “Load plugin schemas after built-in schemas”Plugin schemas are now installed to <datadir>/vast/plugin/<plugin>/schema
,
while VAST’s built-in schemas reside in <datadir>/vast/schema
. The load order
guarantees that plugins are able to reliably override the schemas bundled with
VAST.
By @dominiklohmann in #1608.
Support optional numeric duration output for JSON
Section titled “Support optional numeric duration output for JSON”To enable easier post-processing, the new option
vast.export.json.numeric-durations
switches JSON output of duration
types
from human-readable strings (e.g., "4.2m"
) to numeric (e.g., 252.15
) in
fractional seconds.
By @dominiklohmann in #1628.
Add a timeout option to the export command
Section titled “Add a timeout option to the export command”The new option vast export --timeout=<duration>
allows for setting a timeout
for VAST queries. Cancelled exports result in a non-zero exit code.
By @dominiklohmann in #1611.
PRs 1517-1656
Section titled “PRs 1517-1656”The new transforms feature allows VAST to apply transformations to incoming and outgoing data. A transform consists of a sequence of steps that execute sequentially, e.g., to remove, overwrite, hash, encrypt data. A new plugin type makes it easy to write custom transforms.
Add step size to disk monitor
Section titled “Add step size to disk monitor”The new setting vast.disk-monitor-step-size
enables the disk monitor
to remove N partitions at once before re-checking if the new size of the
database directory is now small enough. This is useful when checking the size
of a directory is an expensive operation itself, e.g., on compressed
filesystems.
Print the remote-version in the status command
Section titled “Print the remote-version in the status command”The status
command now prints the VAST server version information under the
version
key.
By @dominiklohmann in #1652.
Changes
Section titled “Changes”Don’t send dynamic type information to connecting sources
Section titled “Don’t send dynamic type information to connecting sources”Schemas are no longer implicitly shared between sources, i.e., an import
process importing data with a custom schema will no longer affect other
sources started at a later point in time. Schemas known to the VAST server
process are still available to all import
processes. We do not expect this
change to have a real-world impact, but it could break setups where some
sources have been installed on hosts without their own schema files, the
VAST server did not have up-to-date schema files, and other sources were
(ab)used to provide the latest type information.
Deprecate builds without Apache Arrow
Section titled “Deprecate builds without Apache Arrow”Building VAST without Apache Arrow via -DVAST_ENABLE_ARROW=OFF
is now
deprecated, and support for the option will be removed in a future release. As
the Arrow ecosystem and libraries matured, we feel confident in making it a
required dependency and plan to build upon it more in the future.
By @dominiklohmann in #1682.
Remove configure script
Section titled “Remove configure script”The configure
script was removed. This was a custom script that
mimicked the functionality of an autotools-based configure
script
by writing directly to the cmake cache. Instead, users now must use
the cmake
and/or ccmake
binaries directly to configure VAST.
Bug Fixes
Section titled “Bug Fixes”Sort loaded plugins by name
Section titled “Sort loaded plugins by name”VAST no longer erroneously warns about a version mismatch between client and server when their plugin load order differs.
By @dominiklohmann in #1679.
Print the remote-version in the status command
Section titled “Print the remote-version in the status command”VAST no longer erroneously skips the version mismatch detection between client and server. The check now additionally compares running plugins.
By @dominiklohmann in #1652.
Error when initializing a plugin fails
Section titled “Error when initializing a plugin fails”VAST now correctly refuses to run when loaded plugins fail their initialization, i.e., are in a state that cannot be reasoned about.
By @dominiklohmann in #1618.
Allow for running unit tests in parallel
Section titled “Allow for running unit tests in parallel”Executing VAST’s unit test suite in parallel no longer fails.
By @dominiklohmann in #1659.
Fix install dirs wrt binary relocatability
Section titled “Fix install dirs wrt binary relocatability”Non-relocatable VAST binaries no longer look for configuration, schemas, and
plugins in directories relative to the binary location. Vice versa, relocatable
VAST binaries no longer look for configuration, schemas, and plugins in their
original install directory, and instead always use paths relative to their
binary location. On macOS, we now always build relocatable binaries.
Relocatable binaries now work correctly on systems where the libary install
directory is lib64
instead of lib
.
By @dominiklohmann in #1624.
Fix the datagram source
Section titled “Fix the datagram source”A recent change caused imports over UDP not to forward its events to the VAST
server process. Running vast import -l :<port>/udp <format>
now works as
expected again.
By @dominiklohmann in #1622.
Fix build without Arrow
Section titled “Fix build without Arrow”VAST and transform plugins now build without Arrow support again.
The delete
transform step correctly deletes fields from the layout when
running VAST with Arrow disabled.
By @dominiklohmann in #1673.