Hi folks,
The 2024.03 tag has been pushed to master on gitlab.com/lava/lava.
.deb packages have been built in GitLab CI and are published at
https://apt.lavasoftware.org/release
Docker images for amd64 and arm64 have been built in GitLab CI and
are available from
https://registry.gitlab.com/
and
https://hub.docker.com/u/lavasoftware
Changes in this release
==================
# Device-types
## New device-types
* mt8195-cherry-tomato-r3
## aaeon-UPN-EHLX4RE-A10-0864
Allow to set `kernel_start_message` variable.
## bcm2837-rpi-3-b
Fix the DT load addresses that was potentially overwriting u-boot ATAGs.
See [rpi-3-32b fix](
https://gitlab.com/lava/lava/-/commit/afa28d5ae128a591414517edd72652800a72b…
)
## FVP
Automatically retry failures when activating the ARMLM license.
# APIs
## Rest API
The REST API v1 has been removed. The API has been superseded by v2 for a
long time now.
At the same time, a new version of the API (v3) has been started. This is
still an on going work to improve the API performances and reliability.
## XMLRPC
### Devices
Allow to update a device `physical_owner` field from the API. Calling
`lavacli devices update --user <username>` will update the field.
### Workers
Validate yaml syntax before updating the worker configuration.
# docker
## lava-dispatcher
Use QEMU from bookworm-backports, upgrading from 2.7 to 8.2.1.
# Services
## lava-dispatcher-host
Improve stability by handling more potential exceptions.
## lava-publisher
Improve lava-publisher stability by handling multiple potential connection
errors.
## lava-run
When sending logs over https fails because the payload is too large,
lava-run will automatically reduce the size of the payload before retrying.
Before this version, lava-run would retry with the exact same payload (or
sometime even larger one) and will be unlikely to ever succeed.
When failing to send logs to the server, lava-run will also record the
error to stderr. lava-worker will then forward these messages to the
server. This will be recorded as failure_comment.
## lava-server-gunicorn
Switch gunicorn default worker from eventlet to gthread.
With eventlet, the event notification system (based on ZMQ socket) will
need to create a new socket for each connection. If the publisher service
is unreachable, the server will consume all the file descriptors and crash
after some time.
gthread worker allows to reuse the same zmq socket for multiple requests
while still allowing requests to live longer than the worker timeout.
Regarding the performances, the apache bench test results shown that
gthread is able to handle more concurrent connection than eventlet in most
use cases.
## lava-server cli
A new argument has been added to the `lava-server jobs rm` command:
`--logs-only`. When this parameter is set, the command will only remove the
logs from the filesystem while keeping the TestJob objects in the database.
Rgds
--
Rémi Duraffort
Principal Tech Lead
LAVA Tech Lead
Automation Software Team
Linaro