Release Notes

GraphDB release notes provide information about the features and improvements in each release, as well as various bug fixes. GraphDB’s versioning scheme is based on semantic versioning. The full version is composed of three components:

major.minor.patch

e.g., 9.3.2 where the major version is 9, the minor version is 3 and the patch version is 2.

Note

Releases with the same major and minor versions do not contain any new features. Releases with different patch versions contain fixes for bugs discovered since the previous minor. New or significantly changed features are released with a higher major or minor version.

GraphDB 9 includes the following components with their version numbers:

  • RDF4J

  • GraphDB Connectors

  • GraphDB Workbench

Their versions use the same semantic versioning scheme as the whole product, and their values are provided only as a reference.

GraphDB 9.4.1

Released: 28 September 2020

Component versions

RDF4J

Connectors

Workbench

3.3.1

12.1.1

1.4.1

Important

  • Several non-critical bug fixes in GraphDB Engine and Workbench

GraphDB Engine

Bug fixing

  • GDB-4964 Incorrect result from MINUS over solutions from SERVICE

  • GDB-4977 The process cannot access the file error when creating a second server report on Windows

  • GDB-4979 ConcurrentModificationException in GraphDB cluster master node

  • GDB-5013 Simultaneous requests for add user/edit user may lead to changes not being applied

GraphDB Workbench

Bug fixing

  • GDB-4497 Fix latest vulnerabilities found in GraphDB Workbench

  • GDB-4876 RDF Mapping: Namespace set as constant disappears

  • GDB-4946 RDF Mapping: Preview will not be generated for cells that have data if there is an empty cell before them in the mapping definition

  • GDB-4965 Login form not showing up

  • GDB-4982 Errors in the browser’s console using Class Relationship Diagram and Similarity Index pages

  • GDB-4983 My settings: count total results checkbox is not working properly

GraphDB Distributions

Bug fixing

  • GDB-4984 Mac native app displays incorrect encoding of the license agreement text

GraphDB 9.4.0

Released: 02 September 2020

Component versions

RDF4J

Connectors

Workbench

3.3.1

12.1.1

1.4.0

Important

  • Visual interface to generate structured to RDF data mappings in OntoRefine. The new interface enables the users to quickly map structured data to common RDF vocabularies and the ontologies stored in the current repository. The mapping interface also preserves the support of cleaning with GREL transformations, reconciling data against external services and exporting the transformation for automating the updates.

  • RDF mapping API. The new RDF Mapping API allows fast and easy automation of data to RDF transformations. It supports data providers like an OpenRefine project or posted CSV stream over which the user can apply mappings developed with the visual interface or SPARQL.

  • SQL access to GraphDB over JDBC driver. GraphDB features fully functional SQL-based access. Users can register SQL views over SPARQL queries and the new SQL query engine will optimize their execution by pushing some of the complexity down into the SPARQL query. For instructions how to connect see

  • Usability improvements. Users can monitor and abort their own queries without the admin role; share saved visual graphs with other or anonymous access users; RDF parsers load the repository default prefixes;

  • Important fixes. SHACL validation is also functional in the cluster and includes multiple extensions introduced by RDF4J 3.3.0; Improved cluster scalability when consuming large results.

GraphDB Engine & Cluster

New features and improvements

  • GDB-3150 SQL access over JDBC driver to GraphDB

  • GDB-4462 Visual interface to generate tabular to RDF data mappings in OntoRefine

  • GDB-4088 Upgrade to the latest OpenRefine 3.3 version

  • GDB-4773 Advertise HTTP Basic as supported authentication when security is enabled

  • GDB-4806 RDF mapping API with streaming support to transform tabular data into RDF

  • GDB-4838 Upgrade RDF4J to 3.3.1 version

  • GDB-4862 OntoRefine: Update the default list of reconciliation services

  • GDB-4899 SHACL Validation: Extend the supported transaction settings in GraphDB

Bug fixing

  • GDB-3944 DuplicateAliasException when evaluation a query with an internal federation request to the same repository

  • GDB-4304 RDF parsers fail to load the repository default prefixes instead of RDF4J’s hardcoded one

  • GDB-4692 Incorrect evaluation of queries with ALP and wildcards

  • GDB-4849 Cluster worker is blocked from reads when a query result is being consumed

  • GDB-4870 Cannot create a cluster with SHACL repositories

  • GDB-4874 Track read operations on the master instead of relying only on track records from workers

  • GDB-4881 SHACL Validation: Some configuration parameters are not parsed

  • GDB-4890 Interrupted queries with orderBy do not propagate QueryInterruptedException

GraphDB Workbench

New features and improvements

  • GDB-2088 As a user I want to select graph when I explore class hierarchy and dependencies

  • GDB-2179 As a user I want to share a visual graph with other users

  • GDB-4705 Users can manage their own queries in Query Monitoring

  • GDB-4950 Add SHACL transaction settings in the repository creation page

Bug fixing

  • GDB-3937 Error in Workbench trying to list JVM settings if changed

GraphDB Plugins & Connectors

New features and improvements

  • GDB-4115 Semantic Search: Expose semantic similarity threshold flag to users

  • GDB-4648 MongoDB: Expose collation feature to users

GraphDB 9.3.3

Released: 03 August 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0

12.1.1

1.3.2

Important

  • Several non-critical bug fixes in GraphDB Engine and Connectors

GraphDB Engine

Bug fixing

  • GDB-4791 FROM onto:implicit and another named graph fails to return results

  • GDB-4828 Slow evaluation of a query with property path due to a wrong estimate of ALP

GraphDB Connectors

Bug fixing

  • GDB-4813 Lucene advance filtering: Mislabeling of fields as containing IRIs when the parent is used in a filter

GraphDB 9.3.2

Released: 21 July 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0

12.1.0

1.3.2

Important

  • Several non-critical bug fixes in GraphDB Engine, Cluster and Plugins

GraphDB Engine

Bug fixing

  • GDB-4679 Wrong results returned from queries when two OPTIONAL patterns bind the same variable or OPTIONALs used in a singleton groups

  • GDB-4680 Filter with OR not handled correctly when literal constants came from BIND

  • GDB-4726 Slow query with OPTIONALs with multiple nesting

  • GDB-4735 Issue with evaluating queries with OPTIONAL-s in UNION-s and MINUS

  • GDB-4763 Incorrect handling of more than two alternatives in ALP

GraphDB Cluster

Bug fixing

  • GDB-4305 Unable to connect workers when creating a GraphDB cluster with proxy or docker

GraphDB Plugins

Bug fixing

  • GDB-4702 Cannot enable history plugin if disabled by migration

  • GDB-4757 The error that a plugin has been already started is not propagated to the user

  • GDB-4756 Missing space in the message when enabling/disabling the plugin

GraphDB Distributions

Bug fixing

  • GDB-4721 Curl is missing from the automatically built docker images

GraphDB 9.3.1

Released: 18 June 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0

12.1.0

1.3.2

Important

  • Several non-critical bug fixes in GraphDB Engine

GraphDB Engine

Bug fixing

  • GDB-4593 RDF/XML file format with .xml extension is not properly detected when file is imported in Serial mode

  • GDB-4609 Slow execution time of a query with language filter

  • GDB-4614 Statements patters with zero estimation are not placed on top of the evaluation

  • GDB-4617 Spring content negotiation interferes with GraphDB REST API when the URL ends in .com

  • GDB-4625 Incorrect evaluation of ALP that contains alternatives or is placed in UNION

  • GDB-4636 Health checks do not work when SHACL validation repository is ON

GraphDB 9.3.0

Released: 1 June 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0

12.1.0

1.3.1

Important

  • Substantial performance improvement of SPARQL property paths with new native support in GraphDB

  • Enabled configuration of an LDAP bind user to query directories without anonymous access

  • Upgraded Connectors to latest versions of Elasticsearch, Solr, and Lucene without known security vulnerabilities

  • Several non-critical bug fixes in GraphDB Engine, Plugins, and Connectors

GraphDB Engine

New features

  • GDB-4120 Enable the configuration of an LDAP bind user to query directories without anonymous access

  • GDB-4503 Optimized the performance of SPARQL property paths by implementing their support into the GraphDB query model

  • GDB-4521 Measure the performance of a query per TupleExpression and print the collected query’s execution time like ExplainPlan with added Measurement statistics

  • GDB-4567 Upgrade to RDF4J 3.2.0 version

Bug fixing

  • GDB-3912 “+” over property paths may returns nothing

  • GDB-4107 Audit log does not respect Request ID header within the cluster

  • GDB-4519 “Cannot visit sub-query’s vars” error during processing of FILTER EXISTS operators with either SERVICE, sub-select or property path

  • GDB-4532 Literals index may rebuild after a GraphDB restart

  • GDB-4561 External applications cannot obtain the transaction ID using RDF4J transactions API

  • GDB-4573 Filters may fail to correctly eliminate RDF* statements

GraphDB Plugins & Connectors

New features

  • GDB-4494 Allow the change tracking plugin to pause changes collection

  • GDB-4568 Upgrade Connectors to latest versions of ES (7.7), Solr (8.5.1), and Lucene (8.5.1)

GraphDB 9.2.1

Released: 11 May 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0-M1

12.0.3

1.3.1

Important

  • Several non-critical bug fixes in GraphDB Engine, Workbench, Plugins & Connectors

GraphDB Engine

Bug fixing

  • GDB-4483 FROM is much slower than the GRAPH clause because of an inefficient context index existence check

  • GDB-4501 Cached class hierarchy is not removed from cache on reload if new one is empty

  • GDB-4507 Storage tool cannot initialize some of the collections with 40 bits entity size

GraphDB Plugins & Connectors

Bug fixing

  • GDB-4444 Allow multiple fields per connector instance to define the property chain as a single property $self

  • GDB-4448 Similarity plugin fails when indexing small data repositories

GraphDB Workbench

Bug fixing

  • GDB-4403 Uncaught TypeError when loading swagger

  • GDB-4400 Resource view: Reduce the font of embedded triples in the resource view

GraphDB 9.2.0

Released: 23 April 2020

Component versions

RDF4J

Connectors

Workbench

3.2.0-M1

12.0.2

1.3.0

Important

  • GraphDB 9.2 now supports statement level annotations with RDF*/SPARQL*. They enable a more efficient representation of scores, weights, temporal restrictions, and provenance information. It also allows the implementation of all use cases native for the property graph model by fully supporting all its modeling primitives. GraphDB and the new RDF type reduce by over 40% the number of RDF statements, the loading time, and the required disk space to model complex graphs like Wikidata.

  • The semantic similarity indexes remain online during refresh. All clients will continue to hit the old similarity index version until the new one is fully functional and published.

  • The GraphDB Proof plugin can trace back the rules fired to derive a particular implicit statement.

  • Improved performance in the history log searches and diffs with the current state.

  • All third party open source libraries are upgraded to the newer version to avoid publicly known vulnerabilities.

  • RDF4J is upgraded to 3.2.0-M1 version, which includes the embedded triple type and new RDF* parsers and serializers.

GraphDB Engine & Cluster

New features

  • GDB-4244 As a database user I want to upgrade all GraphDB APIs to support RDF* formats

  • GDB-4245 As a database user I want to upgrade all GraphDB APIs to support SPARQL* queries

  • GDB-4390 Update the RDF4J to version 3.2.0-M1 with RDF*/SPARQL* support

Bug fixing

  • GDB-4352 Local codes of the language tags follow ISO 639/3166, where “en-US” is case insensitive but returned in this format

  • GDB-3586 Notification listener fails to notify listeners for transactionStarted and transactionCompleted events

  • GDB-3836 Fixed the default path to the .keystore in graphdb.properties file

  • GDB-4092 Batching multiple updates with internal federation generates causes an NPE and HTTP error 500

  • GDB-4222 Fixed a potential deadlock in the GlobalPageCache during the predicate statistics update

  • GDB-4369 Storage tool may not replace IRI consistently in all database collections

GraphDB Workbench

New features

  • GDB-4246 As a database user I want the Workbench to support RDF*/SPARQL* syntax highlighting and rendering

  • GDB-4248 Extend YASR table view to render SPARQL* results

  • GDB-4287 As a database user I need the Workbench to support the new MIME types so I can import and export RDF* data

  • GDB-4375 Upgrade graphdb.js library to support RDF*/SPARQL*

Bug fixing

  • GDB-4386 Fix the minimist reported security vulnerability in Workbench

  • GDB-4401 Missing status when creating a Connector in Workbench

  • GDB-4402 JS error when disconnecting cluster node in Workbench

  • GDB-4409 YASR: Cached custom styles leads to bad SPARQL results presentation

GraphDB Plugins & Connectors

New features

  • GDB-4136 Similarity plugin: The similarity index remains online during refresh

  • GDB-4165 Proof plugin: Release a new plugin to trace back the rules fired to derive a particular implicit statement

  • GDB-4173 Data versioning plugin: Improve the efficiency of queries like “All that is changed for a subject in a date interval”

  • GDB-4444 Allow multiple fields per connector instance to define the property chain as a single property $self

Bug fixing

  • GDB-4318 Querying the history log for the same subject twice returns fewer results than expected

GraphDB Distributions

New features

  • GDB-4373 Upgrade the GraphDB docker to AdoptJDK 11 built on top of Alpine 3.11

GDB 9.1.1

Released: 21 January 2020

Component versions

RDF4J

Connectors

Workbench

3.0.1

12.0.2

1.2.2

Important

  • Several non-critical bug fixes in GraphDB Engine, Plugins & Connectors

GraphDB Engine

Bug fixing

  • GDB-4161 Adding invalid pie file may corrupt repository

GraphDB Workbench

Bug fixing

  • GDB-4171 Product info JSON should not be visible in create similarity index page parameters

GraphDB Plugins & Connectors

Bug fixing

  • GDB-3030 Predication Similarity: OOM exception is thrown when trying to rebuild a failed index

  • GDB-4163 MongoDB plugin queries may hang

  • GDB-4172 Problem with score retrieval when ordering by a field in Lucene or Elasticsearch

  • GDB-4177 History plugin memory optimizations

GDB 9.1.0

Released: 19 January 2020

Component versions

RDF4J

Connectors

Workbench

3.0.1

12.0.1

1.2.0

Important

  • GraphDB 9.2 now supports statement level annotations with RDF*/SPARQL*. They enable a more efficient representation of scores, weights, temporal restrictions, and provenance information. It also allows the implementation of all use cases native for the property graph model by fully supporting all its modeling primitives. GraphDB and the new RDF type reduce by over 40% the number of RDF statements, the loading time, and the required disk space to model complex graphs like Wikidata.

  • The semantic similarity indexes remain online during refresh. All clients will continue to hit the old similarity index version until the new one is fully functional and published.

  • The GraphDB Proof plugin can trace back the rules fired to derive a particular implicit statement.

  • Improved performance in the history log searches and diffs with the current state.

  • All third party open source libraries are upgraded to the newer version to avoid publicly known vulnerabilities.

  • RDF4J is upgraded to 3.2.0-M1 version, which includes the embedded triple type and new RDF* parsers and serializers.

GraphDB Engine & Cluster

New features

  • GDB-4017 Extend the supported authentication protocols with Kerberos

  • GDB-4026 As a solution architect, I want to use SHACL validation with GraphDB

  • GDB-4101 Upgrade to RDF4J 3.0.1

Bug fixing

  • GDB-3043 Weird interaction of VALUES and Federated

  • GDB-3480 Creating a backup without providing the trailing slash of the path fails

  • GDB-3774 Variables bound in Filter leak outside the Filter block

  • GDB-3800 Peering password protected masters with incorrect token does not generate any error messages

  • GDB-3804 DuplicateAliasException when using internal federation

  • GDB-3902 Abnormal behavior when a single OPTIONAL is an argument of a UNION

  • GDB-3911 Suboptimal owl2-rl rule implementation that handles owl:hasKey

  • GDB-3921 Nested OPTIONALs cause strange query results

  • GDB-3941 xsd:time queries with a timezone produce wrong results when running against a DB with no timezones

  • GDB-3943 Deadlock when evaluating a query with two SERVICE operators

  • GDB-3944 DuplicateAliasException when evaluating a query with internal federation request to same repository

  • GDB-3955 GraphDB Cluster stopped working because of dropped worker’s repository

  • GDB-4033 Federated query for single property fails

  • GDB-4071 Problem with newline in string literal when importing data using curl

  • GDB-4084 Unbound variables in the SELECT cause performance degradation

  • GDB-4117 Removing owl:sameAs does not remove inferred statements

  • GDB-4141 Calling an unknown function in SPARQL does not throw an error and returns an empty binding

  • GDB-4150 Inconsistent behavior of backup between GraphDB editions

  • GDB-4154 OntoRefine Movies dataset cannot be inserted in GraphDB

GraphDB Workbench

New features and improvements

  • GDB-3694 Replace static libraries with their NPM versions

  • GDB-3864 Remove VersionUrlRewriteFilter as Workbench packages come with their own version hash

  • GDB-3874 Replace requires modules with standard es6 modules import/export

  • GDB-3885 Remove unused or empty stylesheets

  • GDB-3887 Implement and integrate rest clients

  • GDB-3888 Make use of utility classes/services

  • GDB-3890 Split Workbench bundle in more fine-grained pieces

  • GDB-3891 Optimize D3 library loading

  • GDB-3947 Invert module and component dependencies in Workbench

  • GDB-4053 Ask for and accept Kerberos authentication when using GraphDB Workbench

  • GDB-4153 Update Workbench libraries due to security risk reported by GitHub

Bug fixing

  • GDB-3699 Similarity index config is appended in the URL after cloning an existing index

  • GDB-3693 Resolve reported code quality issues in the Workbench

  • GDB-3810 Visual graph: advanced search is displayed in situations where Easy graph search should be used.

  • GDB-3898 Sending parallel queries to GDB Workbench links controller in GDB free results in a deadlock

  • GDB-3913 Graphs overview: cannot export graph’s contents from within the graph itself

  • GDB-3923 Missing remove icon in the cluster view

  • GDB-3924 Visual graph reports a strange 404 error when opening resource details

  • GDB-3939 Resource page is not loaded properly in Workbench

  • GDB-4050 Workbench: various overlaps in some sections of the Workbench

  • GDB-4085 Disabling sameAs from UI does not affect exported result set

GraphDB Connectors & Plugins

New features

  • GDB-3931 Implement change tracking plugin - a plugin that tracks data updates

  • GDB-3969 Implement GraphDB Plugin data for history and versioning

Bug fixing

  • GDB-3662 Improve the Connector error message when sorting over an empty index

  • GDB-3740 Similarity search query should be configurable without building similarity index

  • GDB-3904 Similarity search index does not preform special predicate validation properly, leading to “stuck” create index operations

  • GDB-3926 GeoSPARQL plugin displays wrong “current configuration” properties

  • GDB-3928 Propagate all ES connection errors to the Workbench

  • GDB-4079 Semantic vectors logs are left “open” when rebuilding a semantic vector, leading to a memory leak

  • GDB-4155 MongoDB connector raises Cannot cast org.bson.Document to java.util.List

GDB 9.0.0

Released: 30 September 2019

Component versions

RDF4J

Connectors

Workbench

3.0.0

12.0.0

1.1.2

Important

  • The new release features a major redesign of the database Plugin API that simplifies the way to implement complex software logic next to the core database engine. Ontotext releases multiple plugins to the community as open source, demonstrating how to solve common tasks such as data virtualization (see MongoDB Plugin), a complex ranking of search results (see Autocomplete Plugin), new types of indexing (see GeoSPARQL plugin) and advanced graph analytics (see RDF Rank plugin).

  • GraphDB Workbench now becomes a separate open source project enabling the fast development of knowledge graph prototypes starting from the default AngularJS administrative interface. Furthermore, the product includes an open source graphdb.js driver optimized for Node.js and other rapid development frameworks.

  • GraphDB 9.0 supports OpenJDK 11. The product continues to support OpenJDK 8 for its existing clients, as well as every new Oracle Java Long Term Support (LTS) version.

  • The product continues to support the RDF open source community, and is now upgraded to RDF4J version 3.0.

GraphDB Engine

New features

  • GDB-3607 Move to OpenJDK and support for newer Java versions. Make OpenJDK 8 and 11 the officially tested and recommended Java versions

  • GDB-3649 Upgrade to RDF4J 3.0

Bug fixing

  • GDB-1416 Exceptions in query evaluation do not result in error messages

  • GDB-3494 GraphDB is trying to rollback non-existing transaction

  • GDB-3506 Concurrent requests for storage health checks may produce an error

  • GDB-3531 Exception executing simple query after PUT statements in a repo

  • GDB-3585 Suboptimal execution plan for construct with FILTER

  • GDB-3592 Deadlock when notification listeners are to be notified but they were garbage collected before that

  • GDB-3596 LiteralIndex failures within RepositoryRule

  • GDB-3643 Join of subqueries does not work correctly

  • GDB-3646 Error “Could not convert the query to our optimized model” reported during query evaluation containing MINUS

  • GDB-3703 Graph Replacement Optimization does not work with the Java API

  • GDB-3720 Compound transactions do not reflect change in size()

  • GDB-3830 OPTIONAL and Alt-prop-path causes mix-up of bindings

  • GDB-3843 Bulk update “getRealId() must be called in exclusive transaction or after precommit()”

GraphDB Workbench

New features

  • GDB-3619 Split Workbench code base from GraphDB and open source the UI code

  • GDB-3728 Extend Cypress tests to cover all functionalities of the Workbench

Bug fixing

  • GDB-3248 Visual graph: expanding nodes “over owl:sameAs” not working properly

  • GDB-3642 Visual graph UI missing buttons

GraphDB Plugins

New features

  • GDB-1801 Open source plugin API and plugins with developer examples

  • GDB-3308 Implement a way for plugins to know if they are in a cluster

  • GDB-3631 Plugin API: Redesign the plugin notification interfaces to handle the notifications about transactions

  • GDB-3633 Plugin API: Extend system info object passed at plugin initialization

  • GDB-3635 Plugin API: Add mechanism to access the fingerprint in plugins

  • GDB-3636 Plugin API: Cleanup unused parts of the Plugin API like GlobalViewOnData and MemoryConfigurable

  • GDB-3730 Update Plugin API, plugin location, and the Javadoc

  • GDB-3803 Open source the GeoSPARQL plugin

  • GDB-3806 Open source the RDF Rank plugin

  • GDB-3807 Open source the Autocomplete plugin

  • GDB-3808 Open source the Lucene FTS plugin

  • GDB-3813 Open source the GeoSpatial plugin

  • GDB-3814 Open source the Notifications Logger plugin

  • GDB-3815 Open source the MongoDB plugin

Bug fixing

  • GDB-3309 Asynchronous RDFRank build through SPARQL in cluster breaks the cluster

  • GDB-3453 Explain the slow performance for rebuilding GeoSPARQL on Kadaster repository

  • GDB-3511 GeoSPARQL: Creating a quad plugin with precision >24 will result in an error when trying to create a geohash plugin

  • GDB-3554 Similarity indices with training cycles use vector values from first iteration on search

  • GDB-3556 Cannot build predication similarity index over PubMed authors data

  • GDB-3584 Similarity text index -porterstemmer flag does not work

  • GDB-3599 Stopwords do not work with default analyzer in text similarity indices

GraphDB Connectors

New features

  • GDB-3582 Upgrade connectors to latest major releases of Lucene/Solr (8.x) and Elasticsearch (7.x)

Bug fixing

  • GDB-3816 Wrong exporting of ‘elasticsearchClusterSniff’ setting from Connectors view

  • GDB-3819 Viewing existing connectors does not show the values of options that were set by default value and not explicitly

  • GDB-3905 Repair does not work when repairing a connector marked as “incompatible” by being created by an older version

GraphDB Cluster

Bug fixing

  • GDB-3766 Cluster incorrectly indicates IsWritable=false when one of its workers is down