[[breaking_50_index_apis]] === Index APIs changes ==== Closing / deleting indices while running snapshot In previous versions of Elasticsearch, closing or deleting an index during a full snapshot would make the snapshot fail. In 5.0, the close/delete index request will fail instead. The behavior for partial snapshots remains unchanged: Closing or deleting an index during a partial snapshot is still possible. The snapshot result is then marked as partial. ==== Warmers Thanks to several changes like doc values by default and disk-based norms, warmers are no longer useful. As a consequence, warmers and the warmer API have been removed: it is no longer possible to register queries that will run before a new IndexSearcher is published. Don't worry if you have warmers defined on your indices, they will simply be ignored when upgrading to 5.0. ==== System CPU stats The recent CPU usage (as a percent) has been added to the OS stats reported under the node stats API and the cat nodes API. The breaking change here is that there is a new object in the `os` object in the node stats response. This object is called `cpu` and includes percent` and `load_average` as fields. This moves the `load_average` field that was previously a top-level field in the `os` object to the `cpu` object. The format of the `load_average` field has changed to an object with fields `1m`, `5m`, and `15m` representing the one-minute, five-minute and fifteen-minute loads respectively. If any of these fields are not present, it indicates that the corresponding value is not available. In the cat nodes API response, the `cpu` field is output by default. The previous `load` field has been removed and is replaced by `load_1m`, `load_5m`, and `load_15m` which represent the one-minute, five-minute and fifteen-minute loads respectively. The field will be null if the corresponding value is not available. Finally, the API for `org.elasticsearch.monitor.os.OsStats` has changed. The `getLoadAverage` method has been removed. The value for this can now be obtained from `OsStats.Cpu#getLoadAverage` but it is no longer a double and is instead an object encapsulating the one-minute, five-minute and fifteen-minute load averages. Additionally, the recent CPU usage can be obtained from `OsStats.Cpu#getPercent`.