RedisGraph 2.0 release notes
Enabled graph-aided search and graph visualisation. Cypher coverage. Performance improvements.
Requirements
RedisGraph v2.0.21 requires:
- Minimum Redis compatibility version (database): 5.0.7
- Minimum Redis Enterprise Software version (cluster): 5.4.11
v2.0.21 (October 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
-
Minor enhancements:
-
Bug fixes:
-
#1338 Update parser to support negative values.
-
#1319 Replace assertion with runtime error - execution plan building process is unable locate an operation suitable for a filter.
-
#1184 EXPLAIN and PROFILE are invalid clauses. They have counterpart commands
GRAPH.EXPLAIN
andGRAPH.PROFILE
-
#1212 Emit error on the creation of undirected edges.
v2.0.20 (September 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
-
Minor updates:
v2.0.19 (August 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Minor updates:
- #1229 Upgrade RediSearch dependency to 1.8.2
- Performance enhancements:
- Bug Fixes:
- #1223 Resolve race condition in accessing/updating attribute maps.
- #1196 Enable RediSearch Garbage Collection
v2.0.15 (25 June 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Bug Fixes:
- #1159
IN
operator didn't result in an index array lookup with parameterised array (IN $param
).
- #1159
v2.0.14 (22 June 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Bug Fixes:
- #1157 Index search not using query parameters.
v2.0.13 (15 June 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Enhancements:
- #1118 Added module configuration parameters for the number of threads in OpenMP and concurrent queries.
- #1121 RediSearch v1.8.1
v2.0.12 (May 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Enhancements:
- #1103 RediSearch 1.8. This upgrade will reduce the resources required for Garbage Collection of indices inside RedisGraph.
v2.0.11 (April 2020)
This is a maintenance release for version 2.0.
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Minor Enhancements:
- #1056 Added
DISTINCT
support for paths and arrays.
- #1056 Added
- Minor Bugfixes:
v2.0.10 (29 March 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Minor Enhancements:
- Bugfixes:
v2.0.9 (19 March 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Bugfixes:
- #1028 Ensure proper placement of Index Scans when partially replacing Filter ops.
v2.0.8 (18 March 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Bugfixes:
- #1023 Fix regression in checking argument counts to GRAPH endpoints.
v2.0.6 (15 March 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- #897 GRAPH.SLOWLOG
- #1004 Re-enable GRAPH.PROFILE
- #917, #991, #940, #984 Memory leak fixes
- #925 Bug fix within RediSearch
- #1001 Bug fix label scan invalid range
v2.0.5 (23 February 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Enhancement:
- #955 Switch OR,AND boolean semiring to ANY,PAIR.
v2.0.4 (23 February 2020)
Details:
- Enhancement:
- Reduce GraphBLAS size
v2.0.2 (23 February 2020)
Headlines:
- This release improves overall stability and provides fixes for issues found after the previous release.
Details:
- Improved error reporting:
- Enhancements:
- Bug fixes:
v2.0 GA (2.0.1 - January 2020)
This is the General Availability (GA) release of RedisGraph 2.0 (2.0.1)!
Headlines:
- Full Text Search (FTS) enabling Graph-aided Search.
- Full graph response enabling visualisation.
- Substantial amount of Cypher coverage.
- Performance improvements of up to 4x compared to RedisGraph 1.2.
(We will blog about this release soon including performance improvements results and the link here)
Full details:
- Major features
- #339 Full Graph Response. RedisGraph now allows to return Graph entities such as Nodes and Relationships. This feature also enables graph visualisation.
- #558 Indexing functionality replaced by RediSearch. This results in support for
- compound indices
- full text search
- graph-aided search
- #691 RediSearch index is used with
IN
operator on indexed properties. - #488 Replace flex/lemon parser with libcypher-parser.
- #574 Introduction of the array data type. This introduces significant support of Cypher as well as properties can be arrays on both nodes and relationships.
- Cypher
- #714
MERGE
can be combined with any other clause.MERGE
will take into account bounded entities. - #786 Support for passing all supported graph data types (Node, Relationship, Array,...) as arguments to procedure calls, rather than requiring all arguments to be Strings.
- #708 Named path support.
- #717
count(*)
- #730
UNION
- #757
coalesce
- #658 Support for
COUNT DISTINCT
- #574 with the array data support comes
IN
,collect
,head
,range
,reverse
,size
,tail
- #624
randomUUID()
- #632
IS NULL
andIS NOT NULL
. - #594 Support dynamic inline properties for
CREATE
andMERGE
patterns. - #583
NOT
Operator. - #569
timestamp()
function. - #586
CASE WHEN
(simple form). - #582
contains
function. - #596
indegree
andoutdegree
functions for nodes. - #587 improved boolean logic.
- #539 Reusable entities in pattern matching.
- #714
- #668 PageRank support.
- #713 Parameterised queries support. Most client drivers are updated. This enables future performance enhancements for query caching.
- #662 Support for AOF.
- Enhancements
- Performance Improvements
- #773 Bulk deletion of relationships. Deletion of relationships within the same query will be efficiently handled by batch operations in GraphBLAS.
- #783 Better replication support. Only write queries that mutate the graph or create indices will be replicated to AOF and slaves.
- #783 Better commit flow. The Redis Global Lock and RedisGraphs's R/W lock are released once writes are done. Fixed duplicate replications in queries with multiple write segments.
- #640 GraphBlas to support OpenMP.
- #532 #535 Counting edges of given type by reducing matrices.
- #534 #571 Query parsing and
GRAPH.EXPLAIN
in dedicated thread. - #550 #555 Optimize cartesian product by reducing to join.
- #641 Cartesian products with multiple incoming streams >2 can now be optimized with "HashJoin".
- Bugfixes
- #783 Master-replica replication - slaves were dropping index mutations caused by procedure calls.
- #785 Solved several major memory leaks.
- #795 The underlying graph object's attributes were not updated on
RENAME
. - #720 Validation of function calls in
WITH
andCREATE
clauses e.g.CREATE (a {v: fake()})
. - #732, #736, #747 Detect cycles in graph and generate algebraic expression.
- #734 Fix access of uninitialised GrB_Info.
- #735 Index scans with
IN
filters did not compare with strings properly, - #758 Validate that during
UNION
all return clauses are annotated. - #412 Better handling for
GRAPH.DELETE
. - #537 Wrong row index within expand-into, enabled few TCK tests.
- #591 Emit validation error when an alias refers to both nodes and edges.
- #606 Fix Record ID of edges held in ExpandInto op.
- #607 All ops NULL-set variables in their free routines (memory).
- #893 Preserve the children array order when replacing operations.