Skip to main content

Aerospike Graph Known Issues

Aerospike Graph is in a constant state of development.

  1. Multi-threaded writes are not guaranteed to be correct. Use only single-threaded queries for write operations.

  2. Aerospike Graph is optimized for best performance on Linux platforms. Installations on macOS and Windows platforms may be useful for testing purposes, but they may exhibit sub-optimal performance.

  3. The TinkerPop IO step is not suitable for large data imports. The IO step stores data to be loaded in memory, and if that data exceeds the memory allocated to the Java Virtual Machine (JVM), the process may fail with an out of memory error.

  4. When creating new graph elements with user-assigned IDs, string IDs which are valid numbers are treated as the long datatype. For example, if you create an element and assign it the ID "836271", Aerospike Graph Service (AGS) records the ID as 836271.

    This applies to negative numbers as well. If you create an element and assign it the ID "-674", AGS records the ID as -674. In the special case of "-0", AGS records the ID as 0.

  5. Queries based on edge properties are not recommended. Edge properties are not indexed and require a full database scan. Use queries based on indexed vertex properties instead.

    Not recommended:

    g.E().has('property', 'foo')
  6. Graph performs a version check on the Aerospike database server when it starts up, but if you downgrade your server version after Graph is running it does not detect the version mismatch and may produce unpredictable results.