Deprecations and migrations
Use this page when updating an existing application or deployment. The command reference and examples describe the current API. The lists below distinguish compatibility syntax that still works from features that have been removed. GetApiSchema describes the current API and omits deprecated commands and syntax, even when the server still accepts them for compatibility.
Deprecated features
These features remain accepted for compatibility. Use the replacements in new code and when updating existing applications.
Deprecated feature | Replacement |
|---|---|
Property-keyed constraint objects, including object-form groups | Use Array expressions, including in connection filters and |
| Put these parameters at the command level. See sort, limit, group_by_source, and uniqueids. |
Comments in JSON requests | Send standard JSON without comments. Keep explanations outside the request payload. |
| Use |
Omitting | Specify |
Descriptor engines | Use |
| There is no general replacement command. Use the documented administration interfaces for your task; contact support for database repair procedures. |
| Select storage with |
| Use host or container CPU monitoring. This compatibility field always returns zero and does not measure CPU use. |
Descriptor engine names are case-sensitive. New or updated engine values are stored using the current names. Existing stored aliases remain readable without a manual metadata migration. Omitting an engine when creating a descriptor set still selects IVF; this default is supported.
Finding deprecated usage
Use the deprecated_usage_total counter from GetMetrics to identify compatibility features used by your applications. The feature label identifies the feature. Counts accumulate until the server process restarts; reading metrics does not reset them. A request can increment more than one counter, including requests that later fail.
Feature label | What it counts |
|---|---|
| Property-keyed constraint objects, including conditional and nested filters and object-form groups. |
| Sorting specified inside |
| JSON parsed with comments. |
| Index commands using the old selector names. |
| Index creation or removal without an explicit |
| Resolutions of |
| Resolutions of |
| Resolutions of |
| Uses of |
These counters do not cover every feature listed above. Descriptor engine counters include command execution and reads of stored descriptor-set metadata, including background refreshes. They count alias resolutions, rather than unique requests or descriptor sets.
The Grafana Deprecations dashboard shows usage rates and cumulative counts for currently scraped processes. Cumulative counts include uses first observed at startup; rates cannot capture those uses without an earlier sample.
This metric family is included in the default JSON and Prometheus responses. To request only deprecation metrics:
[{
"GetMetrics": {
"metrics": [{"family": "deprecated_usage_total"}]
}
}]
Removed features and response changes
These forms are not part of the current API. Version numbers below identify changes recorded in Release Notes; entries without a version describe the current behavior without assigning a removal release.
Previous feature or format | Migration |
|---|---|
| Use per_group to sort and paginate each source group. |
| Remove this option from configuration files. |
Numeric | Use |
Index type options | Use |
Index identifiers returned as | Identify an index by target, class, property, and kind. |
| Read an object containing |
| Read |
| Use |
| Use |
| Use |
| These configuration fields are rejected. Configure |
Helm | Select the chart version. Published charts pin the database and Web UI images together. |
OpenTofu | Select the module package tag. These inputs are not available; the |
| Use |
Tools image | Use |
Database upgrades
Databases from 0.19.13 must complete the 0.19.14 upgrade before moving to 0.19.15. The automatic conversion provided by 0.19.14 is not included in 0.19.15, which rejects incompatible databases at startup.