Maintenance
What is stored
Everything is in the -data directory.
Presence (who is connected, where, what they select) is never stored.
Back up
With the server stopped (-stop, systemctl stop, or docker compose stop), copy collab.db.
To back up without stopping, use the sqlite3 tool:
sqlite3 /path/to/data/collab.db ".backup /path/to/backups/collab-$(date +%F).db"
To restore: stop the server, replace collab.db with the copy, and delete collab.db-wal and collab.db-shm if they are still there.
Update
The plugin and the server exchange a protocol number. If they differ, the plugin shows "The plugin and server versions are incompatible: update one of them."
Plugin 1.3 and server 1.3 use protocol 6. Neither connects to a 1.2 version of the other, so update the server and every editor at the same time. collab.db is kept. Modified-file marks from 1.2 are taken over by their author on the next save or Git change. Comment messages written with 1.2 can no longer be edited.
On startup, and then once a day, the server asks GitHub whether a newer release exists. It writes a log line. On Windows it also shows a notification. Nothing is downloaded until you ask.
collab-server -update
collab-server -check-update
-update checks the SHA256SUMS file published with the release, replaces the executable, and restarts the systemd service when that service is already running. The database is kept. -check-update only prints the result and exits: 0 when the server is up to date, 2 when a newer release exists.
On Debian, sudo sh install-debian.sh --update does the same replacement. Set COLLAB_AUTO_UPDATE=1 while installing to download and restart once a day. Leave that variable out, or set it to 0, on a later run and the daily install is turned off. COLLAB_UPDATE_CHECK=0 turns the check off entirely.
In the Unreal editor, the Collaborators panel and a toast report a server update and a plugin update. The plugin link opens MarketplaceURL from the .uplugin that was current when the release was built. Notify Server Update and Notify Plugin Update in the personal plugin settings turn each toast off.
A Docker container only logs that a release exists. Update it with docker compose up -d --build.
collab.db is kept. room-*.json files from version 1.1 and earlier are imported on the first start, then renamed to .imported.