mirror of https://github.com/OpenVidu/openvidu.git
2.4 KiB
2.4 KiB
Proposal
Why
The writer updates every entity with an aggregation pipeline, creates track_stats as a time-series collection when it
can, uses partial indexes with $in and validators with validationAction: warn. Amazon DocumentDB (5.0 and 8.0)
supports none of the first, third and fourth, so database initialization fails and the server refuses to start:
failed to start analytics: ... Feature not supported: validationAction:warn. Deployments that use DocumentDB as their
external database would lose the whole OpenVidu server on upgrade, not only analytics.
What Changes
- Before initializing the database, the writer checks that it runs updates with an aggregation pipeline, without writing. A database that does not (Amazon DocumentDB) disables analytics: the server logs an error that names the reason and that analytics and the dashboard need MongoDB, then starts and runs without analytics. It writes nothing to that database.
- Every other analytics startup failure still stops the server.
- The dashboard's private CA variable is no longer described as a way to use Amazon DocumentDB.
Scope excludes the following:
- A write path for databases without pipeline updates.
- The dashboard against such a database, which reports an uninitialized writer schema as it already does.
- The public documentation of external databases, updated with the release documentation.
Edition: CE and PRO (writer). Repositories: openvidu-livekit (openvidu/analytics, openvidu/openvidu.go) and the
dashboard (specs, CHANGELOG).
CHANGELOG lines:
openvidu-dashboard/CHANGELOG.md, Upgrade notes: analytics and the dashboard require MongoDB; on Amazon DocumentDB the server starts with analytics disabled. TheDATABASE_TLS_CA_FILEline no longer names DocumentDB.- openvidu-livekit
CHANGELOG-openvidu.md, Changed: the same behaviour of the server.
Capabilities
New Capabilities
None.
Modified Capabilities
server-analytics-writer: a database without pipeline updates disables analytics instead of stopping the server.deployment-compatibility: the private CA requirement names no DocumentDB.
Impact
- Writer:
InitializeAnalyticsprobes the database after the connection check;openvidu.Starttreats the unsupported database as analytics disabled. Unit tests of the probe classification and an integration test against MongoDB. - Dashboard: specs and CHANGELOG only.