ArangoDB Weekly 40: Updates, Tips, and Community Highlights

Our upcoming release ArangoDB 2.8 is currently available as BETA , adding stunning new features to AQL and allowing to make use of array indexing. In our beta announcement we list all the details and explain how to use graph traversals in pure AQL. Please give it a try and help us finish the release sooner. Read more

ArangoDB 2.8 Beta 1: Test the Latest Features

The first beta release of ArangoDB 2.8 is available for download now, adding Array Indexes and Graph Traversals in AQL. Please try the new version, report bugs on Github and provide us your valuable feedback.

Check out the latest blog posts to get some more background about performance improvements and added features. Read more

ArangoDB 2.8 API Changes: What You Need to Know

There are a few API changes coming in the next 2.8 release. Please have a look if you contribute to a language driver or client-side query builder for ArangoDB. Read more

AQL Function Speedups: ArangoDB 2.8 Enhancements

While working on the upcoming ArangoDB 2.8, we have reimplemented some AQL functions in C++ for improved performance. AQL queries using these functions may benefit from using the new implementation of the function.

The following list shows the AQL functions for which a C++ implementation has been added in 2.8. The other C++-based AQL function implementations added since ArangoDB 2.5 are also still available. Here’s the list of functions added in 2.8: Read more

ArangoDB 2.7.2: Replication Improvements

ArangoDB 2.7.2 comes with replication improvements and some bug fixes. You can download the latest version from our download page.

Replication improvements:

  • added autoResync configuration parameter for continuous replication. Read more

Using Multiple Indexes per Collection in ArangoDB

The query optimizer in ArangoDB 2.8 has been improved in terms of how it can make use of indexes. In previous versions of ArangoDB, the query optimizer could use only one index per collection used in an AQL query. When using a logical OR in a FILTER condition, the optimizer did not use any index for the collection in order to ensure the result is still correct.

This is much better in 2.8. Now the query optimizer can use multiple indexes on the same collection for FILTER conditions that are combined with a logical OR. Read more

Index Speedups in ArangoDB 2.8: Enhancements

The upcoming 2.8 version of ArangoDB will provide several improvements in the area of index usage and query optimization.

First of all, hash and skiplist indexes can now index individual array values. A dedicated post on this will follow shortly. Second, the query optimizer can make use multiple indexes per collection for queries with OR-combined filter conditions. This again is a subject for another post. Third, there have been some speed improvements due to changes in the general index handling code. This is what this post is about. Read more

Foxx Module Resolution Changes in ArangoDB 2.8

The implementation of the JavaScript require function will be adjusted to improve compatibility with npm modules. The current implementation in 2.7 and earlier versions of ArangoDB strictly adheres to the CommonJS module standard, which deviates from the behaviour implemented in Node and browser bundlers.

Module paths will now be resolved in the following ways: Read more

Enhanced Deadlock Detection: Improving ArangoDB Performance

The upcoming ArangoDB version 2.8 (currently in devel) will provide a much better deadlock detection mechanism than its predecessors.

The new deadlock detection mechanism will kick in automatically when it detects operations that are mutually waiting for each other. In case it finds such deadlock, it will abort one of the operations so that the others can continue and overall progress can be made. Read more

Using Bind Parameters in the AQL Editor: ArangoDB

The AQL editor in the web interface is useful for running ad hoc AQL queries and trying things out. It provides a feature to explain the query and inspect its execution plan. This can be used to check if the query uses indexes, and which.

So far the AQL editor only supported using query string literals, but it lacked support for bind parameters. Queries issued by application code however often will use bind parameters for security reasons. Often enough this prevented copying & pasting queries from the application code into the AQL editor and vice versa without making manual adjustments. Read more

Get the latest tutorials, blog posts and news: