Release notes¶
What’s in this document?
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., 10.4.3
where the major version is 10
, the minor version is 4
and the patch version is 3
.
Occasional versions may include a modifier after a hyphen, e.g., 10.5.0-RC1
to signal additional information, e.g.,
a test release (TR1, TR2 and so on), a release candidate (RC1, RC2 and so on), a milestone release (M1, M2 and so on),
or other relevant information.
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 10 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 10.7.2¶
Released: 8 August 2024
Component versions¶
RDF4J |
Connectors |
Workbench |
4.3.13 |
16.2.9 |
2.7.2 |
Important
GraphDB 10.7.2 addresses a major issue with query evaluation in cluster setups as well as a number of less severe bugs.
We recommend everyone using a cluster setup to upgrade.
GraphDB Engine and Cluster¶
Bug fixing¶
GDB-10537 Explain plan does not understand the BNODE() SPARQL function
GDB-10536 Wrong order of evaluation for BIND/VALUES
GDB-10474 Empty result for query while a cluster node is shutting down
GDB-10467 “Cluster creation failed” error message in the log, but the cluster is actually created
GDB-10383 SPARQL templates do not handle SHACL validation errors
GDB-10248 CONSTRUCT query makes a cluster node unresponsive due to a memory issue
GDB-10241 Inconsistent error message for identical errors in cluster vs non-cluster setups
GDB-10176 Harmless but confusing “Closing connection from a different thread” messages in the logs when using SHACL
GDB-9898 Seemingly random NPE when trying to insert invalid (according to SHACL) data
GraphDB Workbench¶
Bug fixing¶
GDB-10626 Misplaced legend in the cluster view under Safari and Firefox browsers
GDB-10622 Executing requests via REST API documentation in Workbench does not work for GraphDB API when using HTTPS
GDB-10593 Rebuilding a Similarity index and aborting the operations before it completes leaves the index with an inconsistent “REBUILDING” status
GDB-10582 Aborting an import of an uploaded file results in an error
GDB-10573 Popups for settings and license icons in Repositories view disappear too quickly
GDB-10539 Importing a directory results in an error
GDB-10527 Various usability issues with internationalization
GDB-9968 Expanding the SPARQL editor and pasting a new line into a long query makes the editor collapse to the last line
GraphDB Connectors and Plugins¶
Bug fixing¶
GDB-10634 Duplicate values in RDF are propagated to ChatGPT Retrieval plugin
GDB-10591 ChatGPT Retrieval Connector fails when there are multiple values per metadata field
GraphDB distributions and deployment¶
New features and improvements¶
GDB-10627 Update various libraries to address known vulnerabilities
GDB-10619 Update RDF4J to 4.3.13
GraphDB 10.7.1¶
Released: 22 July 2024
Component versions¶
RDF4J |
Connectors |
Workbench |
4.3.12 |
16.2.8 |
2.7.1 |
Important
In continuation of GraphDB 10.7.0, GraphDB 10.7.1 addresses another critical issue causing cluster instability after a clear graph operation and hitting the fingerprint mismatch safeguard mechanism. This release also provides many other fixes across various components.
We recommend everyone to upgrade.
GraphDB Engine and Cluster¶
Bug fixing¶
GDB-10519 S3 compatible service backup is not possible due to an invalid hostname
GDB-10389 Bidirectional path search fetches incorrect results when swapping start & end nodes
GDB-10363 Fingerprint mismatch during a stress test after a clear graph query
GDB-10353 NPE while attempting to apply a recovery snapshot after shutdown was started
GDB-9691 Non-deterministic graph path search may not find all paths
GDB-9583 Inadequate error handling when a plugin fails during query
GraphDB Workbench¶
Bug fixing¶
GDB-10471 Uploading multiple files for import at once may fail partially and leave the Import view in an erroneous state
GDB-10422 Import view prompts user for credentials via the browser if no repository is selected when navigating to the view
GDB-10417 The Preserve BNode IDs option in the Import view does not work for JSON-LD/NDJSON-LD
GDB-10399 After resizing the SPARQL editor and executing the query the size of the editor is reset to the default one
GDB-10391 Slow rendering of Import and Sparql views names when screen size changes
GDB-10382 Switching to an Ontop repository in the SPARQL view with inference off makes the view unqueryable
GraphDB distributions and deployment¶
New features and improvements¶
GDB-10495 Upgrade RDF4J to latest 4.3.12
GDB-10493 Update various libraries to address known vulnerabilities
Bug fixing¶
GDB-10207 Import folder for Server import in Workbench cannot be a symbolic link
GraphDB 10.7.0¶
Released: 4 July 2024
Component versions¶
RDF4J |
Connectors |
Workbench |
4.3.10 |
16.2.8 |
2.7.0 |
Important
GraphDB 10.7 introduces several key enhancements and features designed to optimize the management of graph databases across various deployment environments. This release brings notable improvements in cluster operations, configuration management, user interface updates, and documentation enhancements, aiming to provide a more resilient, flexible, and user-friendly experience for our users.
With GraphDB 10.7, users will find significant advancements in system resilience and configuration flexibility, accommodating dynamic deployment scenarios such as those found in Docker and Kubernetes environments. The Workbench interface has also been streamlined, offering an improved user experience that simplifies the management and interaction with RDF data and cluster configurations.
This update addresses multiple bugs, including a critical issue that may prevent some statements from being properly deleted and cause cluster instability by hitting the fingerprint mismatch safeguard mechanism. Therefore, we recommend everyone to upgrade.
- More Flexibility for Providing External Configuration
GraphDB 10.7 expands the system configuration capabilities with new mechanisms that cater to the needs of dynamic deployment environments such as Docker and Kubernetes. These new enhancements are designed to provide more flexibility and ease of use in managing configuration settings.
- Environment Variables for Configuration
GraphDB now supports setting configuration properties directly via environment variables. This method offers the means to externalize the configuration, ensuring that environment-specific configurations can be applied effortlessly and securely, especially in containerized deployments. Users can now dynamically override configurations without the need to directly modify the
graphdb.properties
file or put everything into the GDB_JAVA_OPTS environment variable, which previously could lead to cumbersome reconfigurations and potential misconfigurations. This approach aligns with modern software practices, significantly simplifying deployment and configuration management processes.- Configuration via Separate Files
To further enhance configuration management, GraphDB 10.7 introduces a mechanism that allows the values for configuration properties to be specified via separate files. By appending
@file
to the name of any configuration property (for example,graphdb.auth.token.secret@file
), the system will read the value directly from the specified file. This feature is useful for maintaining sensitive or environment-specific configurations outside of the main configuration file, allowing for cleaner setups.
These new features are part of our ongoing commitment to making GraphDB more adaptable and easier to integrate into complex IT ecosystems, ensuring that it remains a robust and versatile choice for users across various deployment scenarios.
- Streamlined User Experience in Workbench
In GraphDB 10.7, we are excited to introduce several enhancements aimed at streamlining user interactions and improving operational transparency through the Workbench interface. These updates facilitate a more intuitive and effective experience for managing and interacting with your RDF data and cluster configurations.
- Enhanced JSON-LD 1.1 Import/Export Capabilities
Building on the previous introduction of JSON-LD 1.1 in GraphDB 10.5, the latest release further integrates these capabilities directly into the Workbench UI. Users can now access the full suite of JSON-LD 1.1 settings, including options for flattened, framed, and compacted document forms, directly from the UI. This update simplifies workflows by allowing all JSON-LD 1.1 configurations to be managed within every view that supports the import or export of RDF data, making advanced data formatting tasks more accessible to all users.
- Improved Import View
The import view in Workbench has been significantly upgraded to enhance user understanding and control over data import processes. New features include detailed displays of file sizes, import dates, and settings. Additionally, the updated interface clarifies the distinctions and use cases for file uploads versus server imports, helping users to make more informed decisions based on their specific needs and the nature of the data being handled.
- Advanced Cluster Management and Monitoring
The GraphDB Workbench now provides a clearer and more comprehensive overview of cluster states and individual node conditions. This visualization enables users to quickly grasp the operational status of the cluster and promptly respond when intervention is required. The goal of these improvements is to make the management of complex cluster processes more transparent and user-friendly, ultimately enhancing the efficiency and effectiveness of cluster operations, and reducing the time required to check event logs when problems arise.
These updates collectively contribute to a more seamless and efficient experience for all GraphDB users, aligning with our commitment to continuously improve and adapt our tools to meet the evolving needs of our community.
- Documentation is Key
In the release of GraphDB 10.7, we emphasize the significance of robust documentation as a cornerstone for enhancing user experience and operational efficiency. Recognizing this, we’ve made substantial improvements in two key areas: the interactive REST API documentation and the online documentation search capabilities.
- Enhanced Interactive REST API Documentation
The interactive REST API documentation within the Workbench has undergone a significant upgrade. We have updated the Swagger interface to provide a more intuitive and user-friendly experience. Numerous bugs that previously hampered the usability of the documentation have been addressed, ensuring that users can now leverage the full potential of GraphDB’s capabilities through clearer, more accurate API documentation. This upgrade facilitates better understanding and engagement, enabling users to easily integrate and manipulate the GraphDB functionalities within their projects.
- Improved Search Engine for Online Documentation
We have integrated a new search engine for the online documentation of GraphDB, designed to vastly improve the discovery of information. This new engine addresses the limitations of the previous search tool, enhancing the efficiency and relevance of search results. Users can now find the necessary documentation faster and more reliably, making it easier to learn and apply GraphDB’s features and solutions effectively.
These enhancements reflect our commitment to providing exceptional documentation. Good documentation is not just an add-on; it is essential to the successful deployment and operation of any software product. It empowers users, reduces learning curves, and supports efficient problem-solving, ultimately contributing to a smoother and more effective user experience with GraphDB 10.7.
- X509 Authentication Behind a Load Balancer
GraphDB supports X509 authentication for user authentication when SSL configuration is enabled. In certain deployment scenarios, such as when GraphDB is situated behind a proxy or load balancer that handles SSL termination — take AWS’s Application Load Balancer as an example — client certificates are transmitted via HTTP headers, a process referred to as TLS passthrough. This allows backend applications to maintain the mutual authentication workflow.
GraphDB 10.7 introduces a feature that allows the system to interpret and utilize client certificates or certificate chains from request headers for X509 authentication, emulating a direct certificate-based connection to GraphDB.
- Stay Up-to-date with the Latest Versions of Third-party Libraries
As a general strategy to offer a secure and reliable product, we strive to provide up-to-date versions of third-party libraries. This includes features and bug fixes provided by the libraries and addresses newly identified public vulnerabilities.
GraphDB Engine and Cluster¶
New features and improvements¶
GDB-10274 Enable S3 cloud backup to work with Netapp S3 services
GDB-10222 Enhance logging in cluster
GDB-10197 Mask sensitive values in graphdb.properties included in server reports
GDB-10047 Add support for setting GraphDB configuration properties via environment variables
GDB-9981 Read X509 authentication certificates from request headers
GDB-9960 Allow audit logging for the cluster proxy
GDB-9959 Add X-Forwarded-For header to requests handled by the external proxy
GDB-9564 Introduce a mechanism for specifying values for configuration properties via separate files
Bug fixing¶
GDB-10413 Some statements may be skipped during deletion, which may manifest as fingerprint mismatch and a cluster node going out-of-sync
GDB-10368 Suboptimal optimization of deletes in a repository with a custom ruleset
GDB-10347 Improved error handling when requesting a non-whitelisted JSON-LD resource
GDB-10290 Cluster may become unwritable and still report as healthy after many node restarts
GDB-10250 JSON-LD profile parameter not correctly processed for multiple URIs
GDB-10191 NDJSON-LD named graph export also exports default graph when it is not marked
GDB-10086 Cluster node goes out of sync due to “RejectedExecutionException”
GDB-10050 System entities are allowed in the context position
GDB-9991 Export repository in cluster is not load-balanced and thus always executed by the leader
GDB-9955 Issues with memory consumption during backup
GDB-9936 Improved error handling when the config specifies an unknown GPT model
GDB-9911 Simplified cluster logging by removing some multiline messages
GDB-9650 Downloaded repository config is rejected when trying to create a repository with it
GDB-9573 Cannot replace cluster node with a new node having the same address
GDB-9296 Improve error message when attempting to change security without total quorum in cluster
GraphDB Workbench¶
New features and improvements¶
GDB-10149 Improve Workbench cluster management view
GDB-9964 Improved handling of running many concurrent queries in SPARQL editor
GDB-9962 As a user, I need a well documented REST API
GDB-9577 Improve user flow in Workbench Import view
GDB-9448 Freeze row numbers in SPARQL results when through many columns horizontally
GDB-9211 Allow user to specify JSON-LD 1.1 export settings in Workbench
GDB-9198 Allow user to specify JSON-LD 1.1 import settings in Workbench
GDB-3698 Allow zooming further out the visual graph
Bug fixing¶
GDB-10304 Mouse hover on some Google Chart visualizations in SPARQL editor causes blinking
GDB-10301 Disabled inference from a previous SPARQL editor session may prevent executing queries to an Ontop virtual repository
GDB-10195 REST API in Workbench shows incomplete URL when GraphDB is behind a reverse proxy with a context path different from /
GDB-10156 Misaligned “Download as” and “Visual” buttons in SPARQL editor
GDB-10136 “Enable replacement of existing data” checkbox in Import dialog is disabled when importing a single item via selection
GDB-10085 Show full recovery message on mouseover in Cluster management view
GDB-10064 Wrong translation of Save button in French
GDB-9968 Expanding the SPARQL editor and pasting a new line into a query collapses the screen to the last line
GDB-9946 Allow copying truncated values in SPARQL results when “Compact view” is selected
GDB-9881 A SPARQL editor tab that was opened by navigating from another view and then closed by the user may reopen if the user reloads the view
GDB-9719 Show loader while rendering SPARQL result table after changing view settings
GDB-9657 Similarity plugin UI breaks when selecting a result type
GDB-9502 Google charts in SPARQL results uses only half of the screen width
GDB-9464 Abort queries (but not updates) when leaving the SPARQL view
GDB-9462 Unable to close a SPARQL editor tab when there are numerous saved results in local storage
GDB-9430 SPARQL view in side-by-side mode overlaps with Workbench footer
GDB-9365 Similarity indexes view - different color of buttons
GDB-9316 Unexpected error when following the interactive guides and and enabling autocomplete index
GDB-9306 Various issues with the French translation
GDB-9304 Translate labels in Google chart configuration dialog of SPARQL view
GDB-9247 Sorting by column in Pivot table of SPARQL results does not work as expected
GDB-9242 Improved response time when viewing many SPARQL results and changing the Compact view/Hied row numbers settings
GDB-9233 Incorrect SPARQL syntax highlight of RDF-star embedded triples
GDB-9126 Downloading SPARQL query results may fail for certain queries
GDB-8670 Error/success toasts in Workbench may show HTML tags like “<b>unknown</b>” instead of interpreting them
GDB-3107 Sorting by column in SPARQL results should take into account the type of the values
GraphDB Connectors and Plugins¶
New features and improvements¶
GDB-10231 Update Elasticsearch version in connector to 8.13
Bug fixing¶
GDB-10300 History plugin: null pointer exception in shutdown during write while collecting history is disabled
GDB-10077 Elasticsearch connector with a raw query that uses function score and nested script score does not work
GDB-9521 History plugin: null pointer exception in shutdown during write
GDB-9453 Change tracking plugin logs misleading errors about connection sharing between threads
GDB-8471 Kafka Connector sends deletes (null body documents) for documents that were never sent to Kafka
GraphDB distributions and deployment¶
New features and improvements¶
GDB-10367 Update various libraries to address known vulnerabilities
GDB-9579 Improved search engine for online documentation