● Ship · New versions
Updating
install a new version safely.
A new version can add columns and tables to the database. npm run upgrade-check backs up first, applies every change in one transaction, and records the new version. Older code never runs on a newer database.
01Before you update
- Read the Changelog of the new version.
- Download the new version from your CodeCanyon downloads page.
- Keep
.envand the data folder. If you changed source files, note your changes: you will apply them again on the new version.
02Plain Node.js
cd /opt/kinetica
sudo systemctl stop kinetica
npm run backup # an extra copy, just in case
# replace the files with the new version (keep .env and the data folder), then:
npm ci
npm run build
npm run upgrade-check -- --dry-run # shows what would change, changes nothing
npm run upgrade-check # backs up, then applies it
sudo systemctl start kinetica
03Docker
docker build -t kinetica:new .
docker stop kinetica
docker run --rm --env-file .env -v kinetica-data:/app/data kinetica:new npm run upgrade-check
docker rm kinetica
docker tag kinetica:new kinetica
docker run -d --name kinetica --restart unless-stopped -p 127.0.0.1:8787:8787 --env-file .env \
-v kinetica-data:/app/data kinetica
04What upgrade-check answers
| Answer | Meaning |
|---|---|
| No database yet | A new install. Start the server. |
| Up to date | The code and the database have the same version (on a 1.0.0 install: "Up to date: the code and the database are both 1.0.0. Nothing to do.") |
| Updated the database from X to Y | Changes applied; the backup taken first is named. Start the server. |
| Stop: the database was last used by Kinetica X | You installed an older version than the one that last used the data. Install X or newer, or restore a backup made with this version. Exit code 1. |
If anything fails while applying, the transaction is rolled back and the database stays exactly as it was. The server records its version in the database on every start, and System health shows the app version and the schema version. Starting a new version without running upgrade-check also works (the server adds missing columns and tables on start), but without the backup first.