ArangoDB 2.5.1 Release: Bug Fixes and Enhancements
This version is deprecated. Download the new version of ArangoDB
A new release of ArangoDB is available for download.
ArangoDB 2.5.1 adds slow-query log and killing running queries to the Http API and to the web-interface. We have also fixed inefficiencies in remove
methods of the general-graph module and solved some issues regarding stability on windows. The added option --database.ignore-logfile-errors
controls how collection datafiles with a CRC mismatch are treated. We recommend to upgrade your 2.5.0 installation to benefit from these improvements.
ArangoDB 2.5.1 could be started from an unzipped archive, no need to install ArangoDB and share libraries in Windows.
Query tracking
ArangoDB has an Http interface for retrieving the lists of currently executing AQL queries and the list of slow AQL queries. In order to make meaningful use of these APIs, query tracking needs to be enabled in the database the HTTP request is executed for.
GET /_api/query/current
The added option --database.slow-query-threshold
could be used to change the default AQL slow query threshold value on server start.
Killing queries
Running AQL queries can also be killed on the server. ArangoDB provides a kill facility via an Http interface. To kill a running query, its id (as returned for the query in the list of currently running queries) must be specified. The kill flag of the query will then be set, and the query will be aborted as soon as it reaches a cancellation point.
DELETE /_api/query/{query-id}
Bugfixes and Changes
- added option
--database.ignore-logfile-errors
This option controls how collection datafiles with a CRC mismatch are treated.If set tofalse
, CRC mismatch errors in collection datafiles will lead to a collection not being loaded at all. If a collection needs to be loaded during WAL recovery, the WAL recovery will also abort (if not forced with--wal.ignore-recovery-errors true
). Setting this flag tofalse
protects users from unintentionally using a collection with corrupted datafiles, from which only a subset of the original data can be recovered.If set to
true
, CRC mismatch errors in collection datafiles will lead to the datafile being partially loaded. All data up to until the mismatch will be loaded. This will enable users to continue with a collection datafiles that are corrupted, but will result in only a partial load of the data. The WAL recovery will still abort when encountering a collection with a corrupted datafile, at least if--wal.ignore-recovery-errors
is not set totrue
.The default value is true, so for collections with corrupted datafiles there might be partial data loads once the WAL recovery has finished. If the WAL recovery will need to load a collection with a corrupted datafile, it will still stop when using the default values.
- INCOMPATIBLE CHANGE: make the arangod server refuse to start if during startup it finds a non-readable
parameter.json
file for a database or a collection.Stopping the startup process in this case requires manual intervention (fixing the unreadable files), but prevents follow-up errors due to ignored databases or collections from happening. - datafiles and
parameter.json
files written by arangod are now created with read and write privileges for the arangod process user, and with read and write prileges for the arangod process group.
Previously, these files were created with user read and write permissions only. - INCOMPATIBLE CHANGE: abort WAL recovery if one of the collection’s datafiles cannot be opened
- INCOMPATIBLE CHANGE: never try to raise the privileges after dropping them, this can lead to a race condition while running the recoveryIf you require to run ArangoDB on a port lower than 1024, you must run ArangoDB as root.
- fixed inefficiencies in
remove
methods of general-graph module - added option
--database.slow-query-threshold
for controlling the default AQL slow query threshold value on server start - add system error strings for windows on many places
- rework service startup so we anounce ‘RUNNING’ only when we’re finished starting.
- use the windows eventlog for FATAL and ERROR – log messages
- fix service handling in NSIS windows installer, specify human readable name
- add the ICU_DATA environment variable to the fatal error messages
- fixed issue #1265: arangod crashed with SIGSEGV
- fixed issue #1241: Wildcards in examples
Get the latest tutorials, blog posts and news: