mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2026-03-20 23:07:29 +01:00
Prepare release v1.5.2
Entire-Checkpoint: 9286f4c43ab5
This commit is contained in:
2
Makefile
2
Makefile
@@ -1,6 +1,6 @@
|
|||||||
TARGET = ./cc-backend
|
TARGET = ./cc-backend
|
||||||
FRONTEND = ./web/frontend
|
FRONTEND = ./web/frontend
|
||||||
VERSION = 1.5.1
|
VERSION = 1.5.2
|
||||||
GIT_HASH := $(shell git rev-parse --short HEAD || echo 'development')
|
GIT_HASH := $(shell git rev-parse --short HEAD || echo 'development')
|
||||||
CURRENT_TIME = $(shell date +"%Y-%m-%d:T%H:%M:%S")
|
CURRENT_TIME = $(shell date +"%Y-%m-%d:T%H:%M:%S")
|
||||||
LD_FLAGS = '-s -X main.date=${CURRENT_TIME} -X main.version=${VERSION} -X main.commit=${GIT_HASH}'
|
LD_FLAGS = '-s -X main.date=${CURRENT_TIME} -X main.version=${VERSION} -X main.commit=${GIT_HASH}'
|
||||||
|
|||||||
@@ -1,16 +1,62 @@
|
|||||||
# `cc-backend` version 1.5.1
|
# `cc-backend` version 1.5.2
|
||||||
|
|
||||||
Supports job archive version 3 and database version 11.
|
Supports job archive version 3 and database version 11.
|
||||||
|
|
||||||
This is a bugfix release of `cc-backend`, the API backend and frontend
|
This is a bugfix release of `cc-backend`, the API backend and frontend
|
||||||
implementation of ClusterCockpit.
|
implementation of ClusterCockpit.
|
||||||
For release specific notes visit the [ClusterCockpit Documentation](https://clusterockpit.org/docs/release/).
|
For release specific notes visit the [ClusterCockpit Documentation](https://clusterockpit.org/docs/release/).
|
||||||
|
If you are upgrading from v1.5.1 no database migration is required.
|
||||||
If you are upgrading from v1.5.0 you need to do another DB migration. This
|
If you are upgrading from v1.5.0 you need to do another DB migration. This
|
||||||
should not take long. For optimal database performance after the migration it is
|
should not take long. For optimal database performance after the migration it is
|
||||||
recommended to apply the new `optimize-db` flag, which runs the sqlite `ANALYZE`
|
recommended to apply the new `optimize-db` flag, which runs the sqlite `ANALYZE`
|
||||||
and `VACUUM` commands. Depending on your database size (more then 40GB) the
|
and `VACUUM` commands. Depending on your database size (more then 40GB) the
|
||||||
`VACUUM` may take up to 2h.
|
`VACUUM` may take up to 2h.
|
||||||
|
|
||||||
|
## Changes in 1.5.2
|
||||||
|
|
||||||
|
### Bug fixes
|
||||||
|
|
||||||
|
- **Memory spike in parquet writer**: Fixed memory spikes when using the
|
||||||
|
metricstore move (archive) policy with the parquet writer. The writer now
|
||||||
|
processes data in a streaming fashion to avoid accumulating large allocations.
|
||||||
|
|
||||||
|
### Database performance
|
||||||
|
|
||||||
|
- **Reduced insert pressure**: Bulk insert operations (node state updates, user
|
||||||
|
and job cache syncs) now use explicit transactions and deferred inserts,
|
||||||
|
significantly reducing write contention on the SQLite database.
|
||||||
|
- **SyncJobs wrapped in transaction**: `SyncJobs` now runs inside a transaction
|
||||||
|
for better consistency and reduced lock contention.
|
||||||
|
- **Configurable busy timeout**: New `busy-timeout` configuration option for the
|
||||||
|
SQLite connection. This allows tuning how long the driver waits for a locked
|
||||||
|
database before returning an error, which improves resilience under concurrent
|
||||||
|
write load.
|
||||||
|
- **Increased default SQLite timeout**: The default SQLite connection timeout
|
||||||
|
has been raised to reduce spurious timeout errors under load.
|
||||||
|
|
||||||
|
### NATS API
|
||||||
|
|
||||||
|
- **Nodestate health checks in NATS API**: The NATS node state handler now
|
||||||
|
performs the same metric health checks as the REST API handler, including
|
||||||
|
per-subcluster health checks and `MonitoringStateFailed` fallback for nodes
|
||||||
|
without health data.
|
||||||
|
|
||||||
|
### Logging improvements
|
||||||
|
|
||||||
|
- **Better error context**: Several repository functions now include the calling
|
||||||
|
function name in error messages for easier diagnosis.
|
||||||
|
- **Reduced log noise**: `ErrNoRows` (no results found) is no longer logged as
|
||||||
|
an error in `scanRow`; common "no rows" paths are now silent.
|
||||||
|
- **Debug-level missing metrics**: Warning about missing metrics in the metric
|
||||||
|
store has been downgraded to debug level to reduce log noise in normal
|
||||||
|
operation.
|
||||||
|
- **Checkpoint archiving log**: Added an informational log message when the
|
||||||
|
metricstore checkpoint archiving process runs.
|
||||||
|
|
||||||
|
### Dependencies
|
||||||
|
|
||||||
|
- **cc-lib upgraded**: Updated to latest cc-lib version.
|
||||||
|
|
||||||
## Known issues
|
## Known issues
|
||||||
|
|
||||||
- The new dynamic memory management is not bullet proof yet across restarts.
|
- The new dynamic memory management is not bullet proof yet across restarts.
|
||||||
|
|||||||
Reference in New Issue
Block a user