AnzoGraph 2.5 Releases
To view the release notes for an AnzoGraph 2.5 version, select the version from the list below. The release notes for each version describe the product changes from the previous version.
- AnzoGraph Version 2.5.22
- AnzoGraph Version 2.5.21
- AnzoGraph Version 2.5.20
- AnzoGraph Version 2.5.19
- AnzoGraph Version 2.5.18
- AnzoGraph Version 2.5.17
- AnzoGraph Version 2.5.16
- AnzoGraph Version 2.5.15
- AnzoGraph Version 2.5.14
- AnzoGraph Version 2.5.13
- AnzoGraph Version 2.5.12
- AnzoGraph Version 2.5.11
- AnzoGraph Version 2.5.10
- AnzoGraph Version 2.5.9
- AnzoGraph Version 2.5.8
- AnzoGraph Version 2.5.7
- AnzoGraph Version 2.5.6
- AnzoGraph Version 2.5.5
- AnzoGraph Version 2.5.4
- AnzoGraph Version 2.5.3
- AnzoGraph Version 2.5.2
- AnzoGraph Version 2.5.1
- AnzoGraph Version 2.5.0
AnzoGraph Version 2.5.22
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.22.
Improvements
- Additional GDI Controls for the VIEW Enlistment Algorithm
- Improved Command to Check License Properties
Fixes
- ODATA Installers No Longer Distributed with the Frontend Container
- GDI Error Loading Parquet Files That Use INT96 Primitive Type
- A SELECT Query with EXPLAIN Command Mishandles Reformatting Errors
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.22 in Patched Vulnerabilities
Additional GDI Controls for the VIEW Enlistment Algorithm
Version 2.5.22 provides additional GDI controls for determining when a virtualized view should be executed.
Improved Command to Check License Properties
Version 2.5.22 provides an easier way to check the expiration date and other properties of the AnzoGraph license using the command azgctl -getlicenseid
.
ODATA Installers No Longer Distributed with the Frontend Container
The frontend container EOLs the distribution of ODATA installers.
GDI Error Loading Parquet Files That Use INT96 Primitive Type
Version 2.5.22 resolves a GDI issue where the data gets read as an integer instead of a timestamp when loading a parquet file with columns of INT96 primitive type. The following exception occurs: java.lang.IllegalArgumentException: the column order {} is not supported by INT96
.
A SELECT Query with EXPLAIN Command Mishandles Reformatting Errors
Version 2.5.22 resolves an issue where any SELECT query with an EXPLAIN command whose results cannot be reformatted would abort with an error instead of returning the raw result.
AnzoGraph Version 2.5.21
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.21.
Improvements
Fixes
- ODATA Installers No Longer Distributed with the Frontend Container
- GDI Virtual VIEW Enlistment Algorithm Causes Some Queries to Incorrectly Return Empty Result Set
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.21 in Patched Vulnerabilities
Added GDI Support for Random Access Read for Cloud VFS Providers
In Version 2.5.21, 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.
ODATA Installers No Longer Distributed with the Frontend Container
The frontend container EOLs the distribution of ODATA installers.
GDI Virtual VIEW Enlistment Algorithm Causes Some Queries to Incorrectly Return Empty Result Set
Version 2.5.21 corrects the behavior of the GDI DataToolkitView handler, which improperly suppresses the execution of the virtualized SERVICE clause and causes queries to incorrectly return an empty result set.
AnzoGraph Version 2.5.20
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.20.
Improvements
Fixes
- GDI Error Comparing Date/Time Values Using SQL Server
- GDI ElasticSource Unnecessarily Partitions Aggregation Queries
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.20 in Patched Vulnerabilities
Added GDI ElasticSource Support for Wildcard Indices
Version 2.5.20 updates the GDI to support wildcards in es:ElasticSource
when specifying the indices to query against. Wildcards can be specified in the es:index
property. The "-" prefix can be used to filter out an index that would have otherwise matched one of the wildcard patterns.
GDI Error Comparing Date/Time Values Using SQL Server
Version 2.5.20 fixes an error that occurs when comparing any date/time column against NOW() because of too many fractional digits in the generated timestamp. SQL Server limits fractional digits to a maximum of 3 providing millisecond resolution by default.
GDI ElasticSource Unnecessarily Partitions Aggregation Queries
Version 2.5.20 corrects the behavior of ElasticSource where it partitions aggregation queries instead of issuing a single query allowing Elasticsearch to compute aggregates across all indices being queried.
AnzoGraph Version 2.5.19
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.19.
Improvements
Fixes
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.19 in Patched Vulnerabilities
GDI Partitioning Improvements
Version 2.5.19 updates the GDI to support specifying the logical table instead of the base join table when including s:table
with s:query
in GDI DbSource queries.
Upgraded the Google Cloud Storage Dependency for C++ Extensions
Version 2.5.19 updates the Google Cloud Storage dependency for the AnzoGraph C++ extensions.
Incorrect Results when Merge Joins were Enabled
Version 2.5.19 corrects an issue that caused a query to return incorrect results when merge joins were enabled for the query planner.
Error when Planning a Query
Version 2.5.19 fixes an error that caused a query to return an Invalid system state: Assert IFF(state->callable, !right_plan->is_materializer())
error because the query planner attempted to materialize results that had already been materialized.
AnzoGraph Version 2.5.18
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.18.
Improvements
- Added GDI Support for Elasticsearch Request Headers
- Added GDI Support for HTTP Digest Authentication
- Added GDI Support for Pagination with Incremental Load Queries
Fixes
- Incorrect GDI Validation used for Impala Data Source Connections
- GDI Error when Reading a JSON File with Null Nodes
- GDI Failed to Release Locks on Parquet Files after Load
- GDI did not Qualify all Partitioning Column Names for Database Sources
- An Explicit "Vacuum" Command did not Run Vacuum to Completion
Added GDI Support for Elasticsearch Request Headers
Version 2.5.18 adds GDI support for configuring HTTP request headers with Elasticsearch data sources. The s:header
property can be added to ElasticSource requests. For example, s:header [ s:name "Connection" ; s:value "close" ]
.
Added GDI Support for HTTP Digest Authentication
Version 2.5.18 adds GDI support for using HTTP digest access authentication with HTTP data sources.
Added GDI Support for Pagination with Incremental Load Queries
Version 2.5.18 updates the GDI to add support for configuring paging with incremental load queries. For information about pagination with the GDI, see Pagination Options.
Incorrect GDI Validation used for Impala Data Source Connections
Version 2.5.18 updates the GDI to use the standard SELECT 1
query for Impala validation instead of SET UTF8_MODE=TRUE
.
GDI Error when Reading a JSON File with Null Nodes
Version 2.5.18 updates the GDI to resolve an issue that caused a class cast exception to be returned for a query that was run against a JSON file with null nodes.
GDI Failed to Release Locks on Parquet Files after Load
Version 2.5.18 fixes an issue where the GDI continued to maintain a lock on Parquet files after the query was completed.
GDI did not Qualify all Partitioning Column Names for Database Sources
Version 2.5.18 corrects an issue in the GDI where partitioning column names were not always qualified and could lead to ambiguous reference errors when s:query
in a DbSource query referenced multiple tables with a JOIN
.
An Explicit "Vacuum" Command did not Run Vacuum to Completion
Version 2.5.18 resolves an issue where explicitly running the VACUUM command (such as when Anzo runs the command at the end of graphmart loads) did not ensure that the database was fully vacuumed.
AnzoGraph Version 2.5.17
This section describes the improvements in AnzoGraph Version 2.5.17.
Improvements
- Improved Query Cancellation Responsiveness
- Added Support for Timeout Parameters with Load/Write from Amazon S3
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.17 in Patched Vulnerabilities
Improved Query Cancellation Responsiveness
Version 2.5.17 includes an enhancement that decreases the time it takes to cancel most queries.
Added Support for Timeout Parameters with Load/Write from Amazon S3
Version 2.5.17 adds support for specifying the following timeout-related parameters in a Query Context when reading or writing files from/to Amazon S3 with the AnzoGraph IO Load or Write services: httpRequestTimeoutMs
, connectTimeoutMs
, requestTimeoutMs
, tcpKeepAliveIntervalMs
.
AnzoGraph Version 2.5.16
This section describes the improvements in AnzoGraph Version 2.5.16.
- Enhanced the GDI to Capture Property Keys from JSON Files
- Enhanced the GDI's Handling of Queries against Virtualized Views
Enhanced the GDI to Capture Property Keys from JSON Files
Version 2.5.16 updates the GDI to add the ability to capture the names of property keys in JSON files. In GDI Generator queries, this type of metadata can be selected from JSON files by including a variable as the s:selector
and using the same variable as the s:key
. For more information, see Capturing Property Keys.
Enhanced the GDI's Handling of Queries against Virtualized Views
Previously, for queries that were executed against a view, the GDI translated only filters and static values to the virtualized service. In Version 2.5.16, the GDI translates many of the pattern constraints, including FILTER and VALUES, from the outer query to the virtualized service so that the GDI can use the context in the query to better plan the virtualized query. In addition, when constructing views for HTTP sources, the GDI now supports variables in the s:header
and s:parameter
list. When running a query against a view with variables, the variables can be mapped through the view by including predicates in the CONSTRUCT clause. A new property, s:require
, was also introduced. This property can be included in the view to list the variables that are required as input to the view. For example, the following triple pattern makes latitude and longitude required input for queries that are run against the view: () s:require ?latitude, ?longitude
.
AnzoGraph Version 2.5.15
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.15.
Improvements
- Updated the Apache Arrow Extensions to Apache Arrow 11
- Updated the GDI to Automatically Partition Data Sources without Indexes
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.15 in Patched Vulnerabilities
Updated the Apache Arrow Extensions to Apache Arrow 11
Version 2.5.15 upgrades the Apache Arrow C++ extensions to Apache Arrow version 11.
Updated the GDI to Automatically Partition Data Sources without Indexes
In Version 2.5.15, if a data source does not expose an index or other partitioning metadata, which is likely with Databricks, Snowflake, and Impala sources, the GDI proceeds as if s:partitionBy s:auto
is included in the INSERT query. This forces the GDI to partition the data in a way that makes onboarding as performant as possible.
AnzoGraph Version 2.5.14
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.14.
Improvements
Fixes
- Inconsistent Performance for a Query
- Resulting Ontology was Incomplete for DbSource GDI Ontology Generator Query
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.14 in Patched Vulnerabilities
Updated the GDI to Add Support for TOPDOWN with File Sources
Version 2.5.14 updates the Graph Data Interface (GDI) to add support for including the TOPDOWN keyword in the SERVICE clause. TOPDOWN is used when you want to pass input values from the graphmart to the data source.
Improved Logging for the JVM Subsystem
Version 2.5.14 improves logging for the JVM subsystem to help diagnose the cause of issues that result from queries that run Java extensions.
Inconsistent Performance for a Query
Version 2.5.14 resolves an issue that could cause long wait times when AnzoGraph released memory back to the operating system. The long wait times impacted query performance for certain queries.
Resulting Ontology was Incomplete for DbSource GDI Ontology Generator Query
Version 2.5.14 updates the GDI to fix an issue that caused the generated ontology to be incomplete if a user ran a GDI Generator query that included only the s:OntologyGenerator
object without s:RdfGenerator
.
AnzoGraph Version 2.5.13
This section describes the issues that were fixed in AnzoGraph Version 2.5.13.
Fixes
- Invalid Identifier Error for Incremental Database Direct Data Load Query
- Incorrect RPATH for C++ Extensions
Patches for Security Vulnerabilities
- See Patched Vulnerabilities in Patched Vulnerabilities
Invalid Identifier Error for Incremental Database Direct Data Load Query
Version 2.5.13 updates the GDI to fix an issue that prevented users from being able to ingest a database data source incrementally via the Direct Data Load workflow.
Incorrect RPATH for C++ Extensions
Version 2.5.13 corrects the RPATH for the AnzoGraph C++ extensions.
AnzoGraph Version 2.5.12
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.12.
Improvements
- Added Support for Snowflake and Databricks Data Sources
- Enhanced Processing of GDI Views
- Added GDI Support for SPARQL Results
- Added GDI Support for Keyed JSON Files
Other Changes and Fixes
- Removed CDATA Drivers
- Unexpected Results Returned for Query with BIND
- The GDI Could not Access a Query Context from a View Query
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.12 in Patched Vulnerabilities
Added Support for Snowflake and Databricks Data Sources
Version 2.5.12 adds JDBC drivers for connecting to Snowflake and Databricks data sources.
Enhanced Processing of GDI Views
To improve performance of graphmarts that contain views, Version 2.5.12 updates the GDI so that view queries are run only when a request targets its data. For more information, see Enhanced Processing of View Steps that Contain GDI Queries.
Added GDI Support for SPARQL Results
Version 2.5.12 updates the GDI to add support for returning results in SPARQL results format.
Added GDI Support for Keyed JSON Files
Version 2.5.12 updates the GDI to enhance support for JSON files that contain patterns such as the following example, where the JSON key, used in conjunction with a JSON object, is the ID of the entity that the JSON property points to:
{ <ID1>: { "FunctionID": <ID1> } <ID2>: { "FunctionID": <ID2>, "Parameters": { <ID3>: { "ParameterID": <ID3> } } } }
Removed CDATA Drivers
Version 2.5.12 removes the following drivers from the AnzoGraph installation:
- cdata.jdbc.json
- cdata.jdbc.xml
- cdata.jdbc.odata
- csvjdbc
Unexpected Results Returned for Query with BIND
Version 2.5.12 resolves an issue that could cause unexpected results to be returned if a query included a BIND clause in a certain order in the query.
The GDI Could not Access a Query Context from a View Query
Version 2.5.12 fixes an issue where the GDI could not access a query context if its keys were referenced in a view query.
AnzoGraph Version 2.5.11
This section describes the issues that were fixed in AnzoGraph Version 2.5.11.
- Errors when Loading Some XML Files via the Direct Data Load Workflow
- GDI did not Recognize Changes to a Database Schema after Initial Ingestion
- Remote Service Call Could Fail when Query Included Tabs
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.11 in Patched Vulnerabilities
Errors when Loading Some XML Files via the Direct Data Load Workflow
In Version 2.5.11 the Graph Data Interface (GDI) was updated to correct an issue that caused certain XML files to fail to load via the Direct Data Load workflow.
The GDI does not process Document Type Definition (DTD) files. If an XML file references a DTD, the DTD is ignored. The XML is not validated against the DTD and queries that reference elements defined only in the DTD will fail with an error.
GDI did not Recognize Changes to a Database Schema after Initial Ingestion
In Version 2.5.11 the Graph Data Interface was updated to resolve an issue where a query resulted in a "Could not find table" error when a user targeted a new table that was added to the schema after the data source was initially onboarded. DbSource now supports dynamic discovery of tables added to a schema after that schema has been loaded.
Remote Service Call Could Fail when Query Included Tabs
Version 2.5.11 resolves an issue that could cause the HTTP request for a remote service call to be corrupted if tabs were used to format the query text.
AnzoGraph Version 2.5.10
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.10.
Improvements
Fixes
- A Dashboard was Slow to Load Due to Long Running Queries
- The GDI Generated Both Literal and URI Values for Some Object Properties
- Public AWS S3 Buckets were Inaccessible without Credentials
- GDI Exception with Void Data Types
- GDI Query Against Non-Existent Table Returned No Results Instead of Error
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.10 in Patched Vulnerabilities
Enhanced Filtering Capabilities for GDI Incremental Onboarding of File Sources
Previously, when writing GDI incremental ingestion queries for file sources, the incremental condition to evaluate and filter on needed to be against file metadata, such as changes to file names or the last modified date. In Version 2.5.10, the GDI was updated to enable incremental ingestion queries against file sources to filter on file contents in addition to metadata.
A Dashboard was Slow to Load Due to Long Running Queries
Version 2.5.10 resolves an issue that caused code compilation for queries to take longer than expected.
The GDI Generated Both Literal and URI Values for Some Object Properties
Version 2.5.10 resolves an issue that could cause the GDI RDF Generator to generate two triples for an object property, one with a literal value as the object and one with a URI. Now the generator correctly creates the object property as a URI.
Public AWS S3 Buckets were Inaccessible without Credentials
Version 2.5.10 updates the included AWS SDK to resolve an issue that caused public buckets not to be accessible without credentials.
GDI Exception with Void Data Types
When AnzoGraph cannot determine the data type for an input variable binding it types the value as void
. The GDI did not recognize void as one of the potential schema types and threw an exception if it encountered the type. In Version 2.5.10, the GDI maps void to an Object data type so that the exception no longer occurs.
GDI Query Against Non-Existent Table Returned No Results Instead of Error
Version 2.5.10 changes the GDI's handling of the s:table
property in queries when a single table is specified and the table does not exist in the source. Previously, the GDI returned 0 results. In Version 2.5.10, an error is returned.
AnzoGraph Version 2.5.9
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.9.
Improvements
- Increased GDI Tolerance for Non-Standard JDBC Connection URLs
- Added Support for Defining Numeric and Boolean Data Type Formats in GDI Mapping Variables
- Added Support for Null Geometries with the ST_ReadGeoJSON Function
- Made GDI Date to DateTime Conversions Consistent with SPARQL
- Added Support for Referencing Several Anzo Functions in GDI queries
Fixes
- Unable to Return Elasticsearch Fields Listed in the GDI es:source Property
- No Results when Querying for GDI System Information
- NPE for GDI Query Against a Service with Cursor Pagination
Increased GDI Tolerance for Non-Standard JDBC Connection URLs
Since different JDBC drivers accept various connection URL formats, Version 2.5.9 enhances the GDI to relax the parsing rules and accept additional JDBC connection URL variations.
Added Support for Defining Numeric and Boolean Data Type Formats in GDI Mapping Variables
Version 2.5.9 adds support for defining formats for numeric and boolean data types for mapping variables in GDI queries. Numeric format strings accept the Java DecimalFormat conventions. A semicolon can be used to separate positive and negative patterns. For example:
?MetersPerSecond (xsd:double "##0.### m/s") ; ?TotalDue (xsd:double "$##0.00;[$##0.00]") ;
Boolean format strings can contain up to three semicolon delimited sections for true, false, and other values. Each section is a comma separated list of values that should be treated as either true, false, or null. A wildcard can also be specified so that any value not matching another pattern in the format will be treated as matching the wildcard. For example:
?Male ("Gender" xsd:boolean "M;F;*") ; ?Female ("Gender" xsd:boolean "F;M;*") ;
The format strings above will interpret the Gender column as a boolean value. ?Male
is true when the column contains an "M" and ?Female
is true when the column contains an "F".
Added Support for Null Geometries with the ST_ReadGeoJSON Function
In Version 2.5.9, the ST_ReadGeoJSON geospatial function supports reading JSON files with null geometries. Previously ST_ReadGeoJSON queries failed with an exception if the input file was missing some geometry values.
Made GDI Date to DateTime Conversions Consistent with SPARQL
Version 2.5.9 updates the GDI to ensure that conversions from date to dateTime result in values that are consistent with the SPARQL standard.
Added Support for Referencing Several Anzo Functions in GDI queries
In Version 2.5.9, the GDI was updated to add support for including the following Anzo functions directly in GDI queries. To see descriptions and syntax for the functions, see Anzo Function and Formula Reference.
|
|
|
|
The following list of functions are non-standard and must be referenced using their full URI when included in GDI queries:
- ISERROR: http://cambridgesemantics.com/analytics/functions#isError
- LEN: http://cambridgesemantics.com/analytics/functions#len
- MID: http://cambridgesemantics.com/analytics/functions#mid
- QUOTIENT: http://www.w3.org/2005/xpath-functions/math#quotient
- TEXT: http://cambridgesemantics.com/analytics/functions#text
- YEARMONTH: http://cambridgesemantics.com/analytics/functions#yearMonth
Unable to Return Elasticsearch Fields Listed in the GDI es:source Property
Version 2.5.9 resolves an issue that prevented the GDI from retrieving data from Elasticsearch for fields that were specified in the es:source
property.
No Results when Querying for GDI System Information
Version 2.5.9 fixes an issue that caused no results to be returned when a user ran the following query to retrieve the GDI metadata:
PREFIX s: <http://cambridgesemantics.com/ontologies/DataToolkit#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT * WHERE { SERVICE <http://cambridgesemantics.com/services/DataToolkit> { ?data a s:SystemInformationSource ; ?title () ; ?version () ; ?vendor () ; ?timestamp xsd:dateTime . } }
NPE for GDI Query Against a Service with Cursor Pagination
Version 2.5.9 fixes an issue that caused a Null Pointer Exception to be returned when a GDI query was run against a service that exposed cursor pagination.
AnzoGraph Version 2.5.8
This section describes the changes in AnzoGraph Version 2.5.8.
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.8 in Patched Vulnerabilities
Added GDI Support for Paging Results
Version 2.5.8 includes an updated version of the GDI that adds support for paging large amounts of data across a number of smaller requests and other improvements described in the Anzo Version 5.3.8 Release Notes.
A MySQL JDBC Driver is not Distributed with AnzoGraph
AnzoGraph does not include a JDBC driver for MySQL databases. To connect to MySQL sources via GDI queries or the Direct Data Load capability, you can use the included MariaDB driver or add a MySQL driver to AnzoGraph. For instructions on adding a driver, see Deploy Optional Drivers for Accessing Custom Database Sources.
AnzoGraph Version 2.5.7
This section describes the issues that were fixed in AnzoGraph Version 2.5.7.
- Removed the 200-Character Limit for ST_ReadGeoJSON Geometries
- Unable to Use the GDI to Retrieve Data from a DbSource with an SQL Query
- Error when Including the Aggregations Property in GDI ElasticSource Queries
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.7 in Patched Vulnerabilities
Removed the 200-Character Limit for ST_ReadGeoJSON Geometries
Version 2.5.7 updates the Geospatial extension to remove the 200-character limit that was applied to input geometries for the ST_ReadGeoJSON service.
Unable to Use the GDI to Retrieve Data from a DbSource with an SQL Query
Version 2.5.7 updates the GDI extension to resolve an issue where a user was unable to retrieve data for a database data source using only the s:query "<SQL_query>"
option without also including the s:table
and s:partitionBy
options.
Error when Including the Aggregations Property in GDI ElasticSource Queries
Version 2.5.7 updates the GDI extension to resolve an issue where ElasticSource queries failed with an error if they included the es:aggregations [ ]
property.
AnzoGraph Version 2.5.6
This section describes the issues that were fixed in AnzoGraph Version 2.5.6.
- gRPC JWT Tokens did not Expire
- Workarounds were Required when File Access Policies were Enabled
- NPE When an Incremental GDI Query Defined an AccumulatingValue without a Key
- The Remote IO Extension Created Invalid Directories
- The GDI Used Binary Encoding for Custom Data Types
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.6 in Patched Vulnerabilities
gRPC JWT Tokens did not Expire
Version 2.5.6 resolves an issue that caused gRPC authentication tokens to fail expire when the grpc_token_expiry
setting was configured to expire tokens after a number of seconds.
Workarounds were Required when File Access Policies were Enabled
Version 2.5.6 corrects an issue that occurred when file access policies were enabled. Users had to include in the policy_file_*
settings certain patterns that matched an internal directory and AnzoGraph-generated file or Graphmarts could not be activated.
NPE When an Incremental GDI Query Defined an AccumulatingValue without a Key
Version 2.5.6 updates the GDI extension to resolve an issue where incremental ingestion queries that included AccumulatingValue but did not define a key failed with a null pointer exception.
The Remote IO Extension Created Invalid Directories
Version 2.5.6 resolves an issue where the remote-io extension was creating directory structure before checking whether access to the path was allowed. This meant the request could fail because access to the path was denied but the new directory was still created.
The GDI Used Binary Encoding for Custom Data Types
Previously, the GDI encoded custom data types using a custom binary encoding. This caused an issue where encoded values could fail to be decoded. In Version 2.5.6, the GDI was updated to encode the following custom types using their lexical representation rather than binary encoding:
- xsd:dayTimeDuration
- xsd:yearMonthDuration
- xsd:gMonth
- xsd:gYearMonth
- xsd:gDay
- xsd:gYear
- xsd:gMonthDay
AnzoGraph Version 2.5.5
This section describes the new features and issues that were fixed in AnzoGraph Version 2.5.5.
New Features
- Added the Ability to Configure File Access Policies
- Added GPG Signing to Artifacts so Authenticity can be Verified
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.5 in Patched Vulnerabilities
Added the Ability to Configure File Access Policies
Version 2.5.5 adds configuration options that can be set to ensure that only certain files or directories on the server are accessible during the execution of a query. These configuration settings use patterns to determine whether a directory or file is accessible under the file access policy. The AnzoGraph extensions, including the Graph Data Interface (GDI), Geospatial functions, etc. follow the configured file access policy. For details about configuring file access policies, see Managing AnzoGraph File Access Policies.
Added GPG Signing to Artifacts so Authenticity can be Verified
Cambridge Semantics now signs all AnzoGraph artifacts so that their authenticity can be verified.
AnzoGraph Version 2.5.4
This version includes patches for security vulnerabilities. See AnzoGraph 2.5.4 in Patched Vulnerabilities.
AnzoGraph Version 2.5.3
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.3.
Improvement
Fix
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.3 in Patched Vulnerabilities
Increased the Maximum String Size from 1 MB to 2 MB
Previously, the maximum size of strings that could be loaded to AnzoGraph was 1 MB by default. Version 2.5.3 increases the maximum string size to 2 MB by default.
Could not Automatically Truncate Very Large Strings
Version 2.5.3 resolves an issue where AnzoGraph failed to truncate large strings when truncate_clob
was enabled and a user attempted to load strings that were larger than the maximum allowed size. In Version 2.5.3, setting truncate_clob=true
automatically truncates strings to 2 MB.
AnzoGraph Version 2.5.2
This section describes the improvements and issues that were fixed in AnzoGraph Version 2.5.2.
Improvement
Fixes
- Elasticsearch Indexing Step Hung when the Source Included Non-Standard Characters
- The ISIRI and ISURI Functions Produced Different Results
- Federated Query Failed
- Update Query with a Trailing Semicolon Failed
Patches for Security Vulnerabilities
- See AnzoGraph 2.5.2 in Patched Vulnerabilities
Improved Load Performance
To improve load performance, Version 2.5.2 reduces the use of mutexes and removes statistics gathering operations for unused statistics.
Elasticsearch Indexing Step Hung when the Source Included Non-Standard Characters
Version 2.5.2 fixes a rarely encountered issue that occurred if a UCS2/UTF16 encoded character used surrogate pairs and was split along a 256 character page boundary. In this case, the Graph Data Interface (GDI) could attempt to encode only the high surrogate of the pair, causing the Elasticsearch Indexing Step to hang.
The ISIRI and ISURI Functions Produced Different Results
Version 2.5.2 resolves an issue the caused the ISIRI function to produce invalid results while the ISURI function returned the expected result. The two functions now produce the same result.
Federated Query Failed
Version 2.5.2 resolves an issue that caused a federated query against DBpedia to fail with a "SERVICE graph execution failed at SPARQL endpoint" exception.
Update Query with a Trailing Semicolon Failed
Version 2.5.2 resolves an issue that prevented update queries from running if a single semicolon followed the query.
AnzoGraph Version 2.5.1
This version includes patches for security vulnerabilities. See AnzoGraph 2.5.1 in Patched Vulnerabilities.
AnzoGraph Version 2.5.0
This section describes the new features and changes to existing components that are introduced in AnzoGraph Version 2.5.0.
New Features and Improvements
- Created Installer that Includes the Graph Data Interface and Other Extensions
- Enhanced the Graph Data Interface
- Enabled Graph Data Interface Logging By Default
- Added Support for CONSTRUCT Queries with Labeled Property Graphs (RDF*)
- Added Support for Exists and Not Exists Outside of Filters
- Added Support for Listing Multiple Load File Paths in a Single Query
- Added the Ability to Add Extensions with a Load Query
Other Changes and Fixes
- Inference Engine Generated Incorrect Reference for owl:TransitiveProperty
- Incorrect Results for Subquery with Multiple Values Clauses
- Out of Channels Error when Activating Multiple Graphmarts Concurrently
- AnzoGraph Required Restart after Invalid System State Error
- Crash After Refreshing Several Graphmarts Concurrently
Created Installer that Includes the Graph Data Interface and Other Extensions
Version 2.5.0 introduces a new installer (sometimes called the Unified Installer) that incorporates the AnzoGraph extensions, such as the Graph Data Interface (GDI) and associated JDBC drivers, so that they no longer need to be deployed to AnzoGraph after the installation. For more information and instructions on using the new installer, see Installing AnzoGraph.
Enhanced the Graph Data Interface
Version 2.5.0 includes several enhancements to the Graph Data Interface (GDI) to make it more robust for supporting Anzo's new automated ingestion workflow via Graphmarts (introduced in Anzo 5.3.0). For more information about that feature, see Direct Data Load Automated Ingestion Workflow.
Enabled Graph Data Interface Logging By Default
Version 2.5.0 incorporates and configures the logging functionality for the Graph Data Interface (GDI) and other extensions by default. Previously, a separate logging-*.jar
and log.config
file had to be manually added to the <install_path>/lib/udx
directory. Those files are no longer needed.
Added Support for CONSTRUCT Queries with Labeled Property Graphs (RDF*)
Version 2.5.0 adds support for running CONSTRUCT queries to create Labeled Property Graphs.
Added Support for Exists and Not Exists Outside of Filters
Version 2.5.0 adds support for using EXISTS and NOT EXISTS as function expressions that can be used for projection. Previously these functions were only supported in FILTER expressions. The query below shows a simple example that uses EXISTS for projection:
SELECT (EXISTS{?s <http://anzograph.com/knows> <http://anzograph.com/person/joe>} AS ?knows_joe) WHERE { ?s a <http://anzograph.com/person> }
Added Support for Listing Multiple Load File Paths in a Single Query
Version 2.5.0 adds support for listing multiple file or directory location URIs in a single load statement. Specify multiple URIs in a space-separated list. For example, the following LOAD query loads the files from two different directories in parallel:
LOAD <dir:/global/nfs/sales/completed_sales.ttl> <dir:/global/nfs/marketing/prospects.ttl> INTO GRAPH <http://anzograph.com/finance>
When including multiple URIs in a single statement, each URI must have the same scheme, either file: or dir:. All URIs must also have the same file type extension, such as .ttl or.ttl.gz.
Added the Ability to Add Extensions with a Load Query
Version 2.5.0 adds the ability to load extensions to AnzoGraph without having to restart the database. Previously, the only way to add an extension was to copy the .jar file to the <install_path>/lib/udx
directory and then restart the database. Now, you can copy the file to the <install_path>/lib/udx
directory and run a LOAD query using the syntax below. Running the LOAD query loads the .jar file to AnzoGraph and makes the extension available to use without having to restart the database.
LOAD <dir:/<install_path>/lib/udx/<filename>.jar>
Inference Engine Generated Incorrect Reference for owl:TransitiveProperty
Version 2.5.0 fixes an issue that caused the Inference engine to generate an incorrect inference for the owl:TransitiveProperty.
Incorrect Results for Subquery with Multiple Values Clauses
Version 2.5.0 resolves an issue that could cause incomplete results to be returned when a subquery included multiple VALUES clauses.
Out of Channels Error when Activating Multiple Graphmarts Concurrently
Version 2.5.0 fixes an issue that caused AnzoGraph to display an "Out of channels" error and hang when multiple Graphmarts were activated concurrently.
AnzoGraph Required Restart after Invalid System State Error
Version 2.5.0 resolves an issue that required AnzoGraph to be restarted after an out-of-memory error resulted in an Invalid System State message.
Crash After Refreshing Several Graphmarts Concurrently
Version 2.5.0 resolves an issue that caused AnzoGraph to hang and then eventually crash when a number of Graphmarts were refreshed.