AnzoGraph DB 3.1 Releases
To view the release notes for an AnzoGraph DB 3.1 release, select the version from the list below. The release notes for each version describe the product changes from the previous version.
- AnzoGraph DB Version 3.1.8
- AnzoGraph DB Version 3.1.7
- AnzoGraph DB Version 3.1.6
- AnzoGraph DB Version 3.1.5
- AnzoGraph DB Version 3.1.5
- AnzoGraph DB Version 3.1.4
- AnzoGraph DB Version 3.1.3
- AnzoGraph DB Version 3.1.2
- AnzoGraph DB Version 3.1.1
- AnzoGraph DB Version 3.1.0
AnzoGraph DB Version 3.1.8
This section describes the fixes and improvements in AnzoGraph DB Version 3.1.8.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
- GDI Support for Inline View Definitions
- Improved Handling of the UStar Format when Loading X-Rays
- Support for the Use of a UDP in a USING Clause for SELECT and INSERT Statements
- Support for Specifying a Destination Vertex in Unweighted Graphs
Fixes
- Numeric Overflow When Calculating Date/Time Deltas for Values Far from the Epoch
- Error Loading an X-Ray Captured through Anzo UI
- Unencoded Data Binding Selectors Generated in GDI Cause Missing Data for Imported File
GDI Support for Inline View Definitions
Version 3.1.8 adds GDI support for inline view definitions to enable the parsing of queries with inline views on the View step that are now supported by the Anzo SPARQL parser.
Improved Handling of the UStar Format when Loading X-Rays
Version 3.1.8 improves the handling of the UStar format by Anzo when trying to load X-Rays using UDS Remote IO service.
Support for the Use of a UDP in a USING Clause for SELECT and INSERT Statements
Version 3.1.8 enables the use of a UDP with a Using Clause to create SELECT and INSERT statements.
Support for Specifying a Destination Vertex in Unweighted Graphs
Version 3.1.8 enables users to specify a destination vertex in unweighted graphs, thereby improving performance and computation efficiency when using the shortest path function.
Numeric Overflow When Calculating Date/Time Deltas for Values Far from the Epoch
Version 3.1.8 resolves a numeric overflow issue in GDI when calculating date/time deltas for values far from the epoch (e.g. 0215-03-18T00:00:00Z).
Error Loading an X-Ray Captured through Anzo UI
Version 3.1.8 resolves an issue where loading an X-Ray captured from Anzo UI causes an error. When the query is loaded with UDS Remote IO service using the query ./azgi -timer -wide -c "prefix io: <http://cambridgesemantics.com/anzograph/io#> select (count (*) as ?count) where { service io:load('//opt/altair/anzograph/bin/filename.xray'){}. }"
, this results in an error "Exception thrown from within an extension - Unrecognized tar format".
Unencoded Data Binding Selectors Generated in GDI Cause Missing Data for Imported File
Version 3.1.8 resolves an issue where GDI does not encode paths and selectors when generating data binding information to drive the source onboarding process. When path navigation elements that might appear in the field names are not escaped properly, this causes data to be missing when viewing or profiling data in imported files in the graphmart source layers.
AnzoGraph Crashes While Running Elasticsearch Index Query
Version 3.1.8 fixes an issue wherein AnzoGraph crashes while executing an Elasticsearch index query from Anzo owing to the creation of >100 GROUP_CONCAT(DISTINCT ...) aggregates.
AnzoGraph DB Version 3.1.7
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
Fixes
- Error Loading AnzoGraph Data in a Graphmart: "Exceeds concurrent load limit 100"
- Database Reacts Inadequately when Spill Directory is Full
- SPARQL Endpoint - Difference in Results Output Caused by Hidden Whitespace
- Error Message Not Provided with Error Code while Reading Xray tar File
- Failure to Load Xray Step: "Unable to open xray buffer"
- Xray Does Not Capture All Diagnostic Information
Support for "select * {}" Statement
Version 3.1.7 adds support for the SPARQL statement select * {}
, which is valid per the SPARQL 1.1 specification and returns the same result as Apache Jena if the enable_unbound_variables configuration setting is set to true.
Error Loading AnzoGraph Data in a Graphmart: "Exceeds concurrent load limit 100"
Version 3.1.7 resolves an issue that occurs when loading ontologies for a layer in a Graphmart: "ErrorCode [10503] Error loading AnzoGraph data <Exception>: Exceeds concurrent load limit 100". The error is caused by leaking pload context resources that the database allocates when reading from multiple external files.
Database Reacts Inadequately when Spill Directory is Full
Version 3.1.7 corrects several issues that eventually cause the database to crash if the xray_sth_spool_maxgb configuration setting is greater than the size of the disk containing the spill directory. The database starts up despite insufficient disk space to satisfy the configuration setting for xray_sth_spool_maxgb, does not stop immediately if it runs out of space in the spill directory, and adequate disgnostics is not available.
SPARQL Endpoint - Difference in Results Output Caused by Hidden Whitespace
Version 3.1.7 fixes an issue with querying the SPARQL endpoint on AnzoGraph DB, where the CSV results are prefixed with a hidden whitespace that was not there previously, which causes an error in the code running on Oracle RDS.
Error Message Not Provided with Error Code while Reading Xray tar File
Version 3.1.7 fixes an issue where the database only provides an error code without the associated error message when failing to load xray through the io#load service.
Failure to Load Xray Step: "Unable to open xray buffer"
Version 3.1.7 resolves an issue where adding a Load Xray Step and refreshing / reloading the Graphmart causes an exception within the io#load extension: "unable to open xray buffer, return error code(-30)"
Xray Does Not Capture All Diagnostic Information
Version 3.1.7 fixes an issue where some diagnostic information was not being captured when taking an Xray.
AnzoGraph DB Version 3.1.6
This section describes the fixes and improvements in AnzoGraph DB Version 3.1.6.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
Fixes
- Multiple Options, WITH Clause, and Variable Binding Cause a Query to Return Invalid Results
- Queries Not Fully Recovered when the Database Auto-restarts
- Error Loading RDF Data from WebDAV Path Using io:load Service Server
GDI Support for Anzo Database Connection Objects
Version 3.1.6 adds GDI support for translating Anzo database connection objects. The Add Data interface of newly created or existing source layers allows browsing shared database connection objects created in the Anzo connections interface.
GDI Support for Elasticsearch kNN Search Feature
Version 3.1.6 adds GDI support for the k-nearest neighbor (kNN) search API exposed by Elasticsearch version 8.
Multiple Options, WITH Clause, and Variable Binding Cause a Query to Return Invalid Results
Version 3.1.6 resolves an issue where a SPARQL query returns invalid results if it involves multiple options, the WITH clause, and variable binding.
Queries Not Fully Recovered when the Database Auto-restarts
Version 3.1.6 corrects an issue where, after a database auto-restart following a crash, not all queries in flight for a single transaction were recovered.
Error Loading RDF Data from WebDAV Path Using io:load Service Server
Version 3.1.6 resolves an issue in the "libcsi-io" User-Defined Services extension library where loading the RDF data from WebDAV server causes an exception containing "Precondition Failed(412)" due to an incorrect PROPFIND
request with depth is set to infinite. Also improved processing PROPFIND
response based on the configured alias for ":DAV" and handling EOF stream based on the read size = 0 in the http(s) downloaders.
AnzoGraph DB Version 3.1.5
This section describes the new features and improvements in AnzoGraph DB Version 3.1.5.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
- Added Support for Token Authentication to Access Google Cloud Services
- Added Support for Service and External (Federated) Account JSON Object Authentication to Access Google Cloud Services
- Additional Diagnostics for the Out of Memory Killer
- Enhancements in License Management with AnzoGraph for Podman Users
- Improved Error Handling for Database Start-up Issues Caused by JVM Failures
- Improved Connection Cleanup Process, Error Messages, and Logging
Fixes
- Error Activating Graphmart: "Invalid system state m_length == n"
- Error "Exceed Concurrent Load Limit 100" when Loading a Graphmart
- Delayed Index Resolution in GDI ElasticSource Causes Null Pointer Exception
- Unhandled Exception Caused by Exceeding Configured max_connections Limit
- Assigned Default Bolt Protocol Port Number Mismatches Documented Port
- Internal Server Error(500) when Executing HTTP Load Request for URLs Containing "webdav" Keyword
Added Support for Token Authentication to Access Google Cloud Services
Version 3.1.5 adds support for token key authentication for accessing Google Cloud services in the remote IO client configurations of User-Defined Extension libraries. The newly added context parameters are gcs.auth.googledefault, gcs.auth.access_token, gcs.auth.expires_after
.
Added Support for Service and External (Federated) Account JSON Object Authentication to Access Google Cloud Services
Version 3.1.5 adds support for service and external (federated) account JSON object authentication for accessing Google Cloud services in the remote IO client configurations of User-Defined Extension libraries. The newly added context parameters are gcs.auth.service_account
and gcs.auth.external_account
(strings of JSON object for the service account key file and the external/federated account key file, respectively.
Additional Diagnostics for the Out of Memory Killer
In the unlikely event the Linux Out of Memory Killer terminates the AnzoGraph database, version 3.1.5 preemptively captures additional database and system information to diagnose the problem.
Enhancements in License Management with AnzoGraph for Podman Users
Version 3.1.5 enhances the upgrade process for containers running on Podman by ensuring that the AnzoGraph license remains persistent throughout the container lifecycle.
Improved Error Handling for Database Start-up Issues Caused by JVM Failures
Version 3.1.5 provides more informative error messages in the client interface and the boot log file to help diagnose and troubleshoot database start-up issues caused by JVM failures.
Improved Connection Cleanup Process, Error Messages, and Logging
Version 3.1.5 provides more effective connection cleanup that improves the handling or bad or partial HTTP requests, high-concurrency connections, and similar activity or failures. More logging has been added to system tables to provide more details on when connections were started, failed, closed, etc. Connections flagged as abnormal are terminated after 5 seconds, which is configurable via http_select_timeout.
Error Activating Graphmart: "Invalid system state m_length == n"
Version 3.1.5 fixes a Graphmart activation error ("Invalid system state m_length == n") caused by incorrect conversion of non-ASCII characters to uppercase or lowercase.
Error "Exceed Concurrent Load Limit 100" when Loading a Graphmart
Version 3.1.5 fixes a resource leak issue in database queries that causes an exception "Exceed Concurrent Load Limit 100" when loading a Graphmart.
Delayed Index Resolution in GDI ElasticSource Causes Null Pointer Exception
Version 3.1.5 resolves an issue where a non-partitioned ElasticSearch queries generate a null pointer exception when executed against indices that don't exist. This effectively breaks support for determining the indices using the FROM clause in the SPARQL query, since not all layers have an ElasticSearch index mapped.
Unhandled Exception Caused by Exceeding Configured max_connections Limit
Version 3.1.5 resolves an issue where the number of actual connections exceeding the max_connections value set in the AnzoGraph DB configuration causes an unhandled exception. For example, a crash occurs when running 30 concurrent HTTP requests while max_connections=25.
Assigned Default Bolt Protocol Port Number Mismatches Documented Port
Version 3.1.5 corrects an issue where the AnzoGraph DB Helm chart assumes and documents the Bolt protocol port to be 7000, whereas the actual default port number is assigned to 7088. The same issue has been corrected for anzograph-operator.
Internal Server Error(500) when Executing HTTP Load Request for URLs Containing "webdav" Keyword
Version 3.1.5 resolves an issue in User-Defined Extensions where executing the HTTP load request for a URL containing the "webdav" keyword in its path causes an error "Internal Server Error(500)".
AnzoGraph DB Version 3.1.4
This section describes the fixes and improvements in AnzoGraph DB Version 3.1.4.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
Fixes
- A UDS Extension Function Causes Memory Access Error
- Deploying All-In-One Image Unnecessarily Deploys Frontend Pod
A UDS Extension Function Causes Memory Access Error
Version 3.1.4 fixes an issue where the function last()
of the User-Defined Services extension library causes a memory access error when called for a top-down service.
Deploying All-In-One Image Unnecessarily Deploys Frontend Pod
Version 3.1.4 fixes an issue where deploying the AnzoGraph DB all-in-one image with SHA and deployFrontend=true
option involves unnecessary deployment of the frontend pod.
AnzoGraph DB Version 3.1.3
This section describes the new features and improvements in AnzoGraph DB Version 3.1.3.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
- Improved Support for Various URL Formats Handled by S3 VFS Driver
- Additional GDI Controls for the VIEW Enlistment Algorithm
Fixes
Improved Support for Various URL Formats Handled by S3 VFS Driver
Version 3.1.3 improves the URL parsing behavior of the S3 VFS Driver ensuring that the URL formatting performed by the driver correctly transforms input URLs into a standard format.
Additional GDI Controls for the VIEW Enlistment Algorithm
Version 3.1.3 provides additional GDI controls for determining when a virtualized view should be executed.
GDI Error for Database Connection Query Configured with Password Context Variable
Version 3.1.3 fixes an issue where GDI would not allow secrets to be used when configuring connection properties other than the username and password. A database connection query with such properties would result in an error "Query context property is not available or is considered protected due to contents or key". The fix allows secrets to be handled securely when configuring the extended connection properties such as private_key_file_pwd
.
AnzoGraph DB Version 3.1.2
This section describes the improvements and fixes in AnzoGraph DB Version 3.1.2.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
Fixes
- ODATA Installers No Longer Distributed with the Frontend Container
- S3Crt Load Query Causes Connection Loss
- The cgroup RAM Quota Not Properly Checked during Kubernetes Container Activation
- Fix GDI's Handling of Nullable Variable Bindings in String Templates
ODATA Installers No Longer Distributed with the Frontend Container
The frontend container EOLs the distribution of ODATA installers.
S3Crt Load Query Causes Connection Loss
Version 3.1.2 resolves an issue where an S3Crt load query executed with or without context results in errors "UNAVAILABLE: Network closed for unknown reason"or "connection lost: SSL error".
The cgroup RAM Quota Not Properly Checked during Kubernetes Container Activation
Version 3.1.2 resolves an issue where an S3Crt load query executed with or without context results in errors "UNAVAILABLE: Network closed for unknown reason"or "connection lost: SSL error".
Fix GDI's Handling of Nullable Variable Bindings in String Templates
Version 3.1.2 resolves an issue that occurs when using the "{{?varname}}"
syntax to build strings dynamically within a GDI SERVICE clause. An error will occur if the referenced ?varname"
is NULL
for a particular row. The proper behavior is for the string template to evaluate to NULL
unless a default value is provided by the template
"dynamic/{{?varname:default='-'}}/string"
Another workaround, in addition to specifying a default for unbound variables, is to use BOUND
to conditionally evaluate the string template
IF(BOUND(?varname), "dynamic/{{?varname}}/string")
AnzoGraph DB Version 3.1.1
This section describes the new features and improvements in AnzoGraph DB Version 3.1.1.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
- Added GDI Support for Provider Metadata
- GDI Test Connection Service
- Added GDI Support for Random Access Read for Cloud VFS Providers
Fixes
Added GDI Support for Provider Metadata
Version 3.1.1 adds GDI support for a provider metadata service allowing the set of available source types and providers to be queried. This service exposes all the information needed to create instances of the various source types along with enough data to allow the source editing UI to be constructed dynamically.
GDI Test Connection Service
Version 3.1.1 adds GDI support for a test connection service to ensure connectivity from Anzo through AnzoGraph DB to the backend data source. Test connection outputs rows for each step of the connection attempt describing what succeeded and what failed.
Added GDI Support for Random Access Read for Cloud VFS Providers
In Version 3.1.1, cloud VFS drivers (S3, GCS, Azure) bundled with GDI support random access reads, which allows large files to be partitioned and makes the loading of large CSV and Parquet files faster.
Exceeded Maximum Size of the Spill Directory
Version 3.1.1 resolves an issue in the backend logging component where the total size of the accumulating spool files exceeds the configured limit for the spill directory size.
AnzoGraph DB Version 3.1.0
This section describes the new features and improvements in AnzoGraph DB Version 3.1.0.
This version includes patches for identified security vulnerabilities. For details about the patches, see Patched Vulnerabilities in the Graph Studio Release Notes.
New Features and Improvements
- Improved Memory Management
- Increased Historical System Data Retention for X-Ray Analysis
- Added Support for Window Aggregates on Nullable Fields
Improved Memory Management
Version 3.1.0 reworks the memory subsystem so that AnzoGraph DB can maximize memory usage, avoid getting shut down due to the Linux out-of-memory (OOM) killer, and accurately report how memory is being used.
Increased Historical System Data Retention for X-Ray Analysis
Version 3.1.0 increases the amount of historical system table information that is stored on disk and captured in x-rays. In previous AnzoGraph DB versions, system tables stored about 30 minutes to a few hours worth of historical system data, depending on the query workload. To spool information, system table data was written to files in the <install_path>/spill
directory, but the directory was cleared each time the database was restarted. As a result, users were advised to take an x-ray immediately after encountering a problem. Taking an x-ray right away increased the chances that the x-ray captured all of the messages and debugging information necessary for diagnosing the issue.
In 3.1 releases, the spill
directory is no longer cleared on restart. And, by default AnzoGraph DB is configured to retain up to 20 GB of system table data per node. That amounts to about 1 to 7 days worth of activity, depending on the workload. By default, when an x-ray is generated from the user interface, the x-ray contains the last 24 hours of historical system data, regardless of whether the database was restarted in that time frame. When an x-ray is generated with the system management CLI, there are new options for specifying the time frame to capture in the xray. For more information, see Retrieving Diagnostic Files.
This change increases by 20 GB per node the amount of disk space that the installation path requires. The location of the spill directory and the amount of historical data to retain can be adjusted, however, and are controlled by the spill_directory, xray_sth_spool_duration, and xray_sth_spool_maxgb configuration settings.
Added Support for Window Aggregates on Nullable Fields
Version 3.1.0 extends the implementation of window aggregates to support nullable fields, such as computing window aggregates on expressions. Window aggregates are not supported on null values.