ArangoDB 2.7 RC1: Preview the Latest Features

We put a lot of brainpower into the next major release of our favorite database. Thanks to your feedback and contributions we got some important steps forward. Share your professional experiences, opinions and feedback with us on this release candidate of ArangoDB 2.7.

This is a quick info about the upcoming 2.7 release – for details please check our documentation and the changelog. Read more

More info...

ArangoDB Weekly 34: Updates, Tips, and Community Highlights

In just a few days we will publish our release candidate of ArangoDB 2.7. As secure performance and ease of use are our key goals, we worked hard on some nice improvements like

  • Index Buckets (Reducing loading time for collections and enable faster resizing)
  • Throughput Enhancements (Real world tests showed 25-75% increase of throughput compared to 2.6)
  • Enhancements for AQL like “return distinct”, “template query strings” or the brand new “AQL query result cache” Read more
More info...

ArangoDB PHP Driver: Enhancements for Version 2.7

While preparing the release of ArangoDB 2.7, some improvements were made for the PHP driver for ArangoDB.

The 2.7 version of the PHP driver now supports the AQL query results cache. The cache can be turned on or off globally, or be set to demand mode. The demand mode will allow controlling caching on a per-AQL-query basis. Read more

More info...

ArangoDB 2.6.8: Latest Updates and Enhancements

The release ArangoDB 2.6.8 fixes a memory access bug on ARM. So for your pet project on a Raspberry Pi you need to change the CPU alignment setting to allow unaligned memory access.

There is no need to update to 2.6.8 for other distributions. Read more

More info...

AWS AMI Upgrade: Enhancements and Improvements

ArangoDB is available as Amazon Marketplace Image (AMI) for free.

The process to submit and publish a new ArangoDB image to the marketplace takes some time and you might not find the latest release in the marketplace store yet. However, updating to the latest version is not that hard.

First, log in to the virtual machine with the user ubuntu and the public DNS name of the instance. Read more

More info...

ArangoJS 4 Alpha: Available Now for Testing

The first alpha of the official JavaScript driver arangojs‘ upcoming major release is now available on npm.

Version 4 streamlines the driver’s API by removing unnecessary server roundtrips to obtain references to collections and graphs that already exist:

Before:

var db = require('arangojs')();
db.collection('users')
.then(function(collection) {
 return collection.import(allTheUsers)
})
.then(function() {
 return db.collection('blogs')
})
.then(function(collection) {
 return collection.import(allTheBlogs);
})
.then(function() {
 return db.collection('articles')
})
.then(function(collection) {
 return collection.import(allTheArticles);
})
.then(handleSuccess)
.catch(handleErrors);

After:

var db = require('arangojs')();
db.collection('users').import(allTheUsers)
.then(function() {
 return db.collection('blogs').import(allTheBlogs);
})
.then(function() {
 return db.collection('articles').import(allTheArticles);
})
.then(handleSuccess)
.catch(handleErrors);

(more…)

More info...

Building AQL Query Strings: Tips and Best Practices | ArangoDB Blog

I recently wrote two recipes about generating AQL query strings. They are contained in the ArangoDB cookbook by now:

After that, Github user tracker1 suggested in Github issue 1457 to take the ES6 template string variant even further, using a generator function for string building, and also using promises and ES7 async/await.

We can’t use ES7 async/await in ArangoDB at the moment due to lacking support in V8, but the suggested template string generator function seemed to be an obvious improvement that deserved inclusion in ArangoDB.

Basically, the suggestion is to use regular JavaScript variables/expressions in the template string and have them substituted safely.

With regular AQL bind parameters, a query looks like this:

var bindVars = { name: "test" };
var query = `FOR doc IN collection 
         FILTER doc.name == @name 
         RETURN doc._key`;
db._query(query, bindVars);

This is immune to parameter injection, because the query string and the bind parameter value are passed in separately. But it’s not very ES6-y.

(more…)

More info...

ArangoDB Weekly 33: V8 Upgrade and ArangoDB 2.6.7 Highlights

In the last two weeks we’ve fixed some issues, upgraded the bundled V8 version in ArangoDB and released the maintenance release 2.6.5 and 2.6.7 . Besides that we continued our efforts to enhance our indexing capabilities and startet further cluster tests.

ArangoDB Release

The next maintenance release for ArangoDB 2.6 is available for download. You can find a full list of changes in our change-log (2.6.7) and change-log (2.6.5).

Download ArangoDB 2.6.7

ArangoDB related (Drivers & more)

  • (Elasticsearch) elasticsearch-river-arangodb: River Plugin for ElasticSearch, now builds against ES 1.7 (Patrick Huber)
  • (PHP) zend-arangodb-auth (early stage): provides auth and acl for zend framework (Cyberrebell)
  • (Python) python-arango (2.0.0): API call methods for user management and monitoring (Joohwan Oh)
  • (vert.x) vertx-arango-client (early stage): ArangoDB client library built with vert.x. (Craig G)

(more…)

More info...

ArangoDB 2.6.7: Maintenance Release Overview | ArangoDB Blog

A new maintenance release 2.6.7 is available for download.

Changelog:

  • Improved edge index performance when using collections with more than 100 Mio. edges
  • added startup option --server.additional-threads to create separate queues for slow requests.
More info...

ArangoDB 2.6.5: Maintenance Release Highlights | ArangoDB Blog

ArangoDB 2.6.5 is available for download. This is a bugfix release that solves the following issues:

  • fixed busy wait loop in scheduler threads that sometimes consumed 100% CPU while waiting for events on connections closed unexpectedly by the client side
  • handle attribute indexBuckets when restoring collections via arangorestore. Previously the indexBuckets attribute value from the dump was ignored, and the server default value for indexBuckets was used when restoring a collection.
  • fixed “EscapeValue already set error” crash in V8 actions that might have occurred when cancelling V8-based operations.
More info...

Get the latest tutorials,
blog posts and news: