Virtuoso Open Source 7.2.7 Release Notes

Virtuoso Open Source 7.2.7 Release Notes


The Virtuoso engine has been enhanced to use 64-bit prefix IDs in RDF_IRI thereby enabling it host very large databases such as Uniprot that exposes a Knowledge Graph comprising 90 billion+ triples behind a live SPARQL Query Services endpoint.

New databases automatically make use of this important enhancement, while existing databases will need to be upgraded.

Please read our instructions to upgrading a 7.2.x database to 7.2.7.

DBMS Engine

  • Added optimizations for clearing graph
  • Added optimizations for deleting triples
  • Added support for CONNECT to allow http proxy like squid to tunnel https:// requests
  • Added support for OpenSSL 3.0.x
  • Added support for cast epoch time back to date/datetime
  • Added support for handling X-Forwarded-Proto header from proxy
  • Added support to fine tune size of memory pool used by SPARQL constructs
  • Added support to populate labels in insert for FCT
  • Added optional digest name to aes key
  • Added short name date BIF functions
  • Added xenc_digest and xenc_hmac_digest BIF functions
  • Added unix_timestamp() BIF function
  • Added support for handling HTTP status 307 and 308 in client
  • Fixed Host header should include non-standard port.
  • Fixed SQLConnect handling of empty strings in szDSN and szUID
  • Fixed SSL_renegotiate for OpenSSL 1.1.x
  • Fixed backup_online syntax
  • Fixed calculations from TZ in minutes to +HHMM format
  • Fixed check for https behind proxy for dynamic local
  • Fixed crypto functions error codes
  • Fixed issue calling external proxy with https address
  • Fixed issue executing vec exec expression in WHERE clause
  • Fixed issue generating triples from rdf view to physical store with rdfs:label property
  • Fixed issue sorting NaN values in colstore
  • Fixed issue with X509 CSR generation
  • Fixed issue with backup restore and DDL from plugins
  • Fixed issue with dsa and rsa keys when no cert is attached
  • Fixed issue with registering tables in plugin
  • Fixed issues with x509 extensions
  • Fixed memory leak in colsearch
  • Fixed missing index upgrading older databases
  • Fixed possible box corruption printing a very long literals box
  • Fixed return HTTP 503 even if MaintenancePage cannot be found
  • Fixed serialize of AES IV
  • Fixed subject should be written in UTF8 format
  • Fixed trace to log warnings as WARN_0 instead of ERRS_0
  • Fixed when running as windows service, stderr is an invalid handle
  • Removed redundant checkpoints when creating new database
  • Small cleanups

SPARQL Query Processor

  • Added optimizations for clearing graph
  • Added optimizations for deleting triples
  • Added initial list of languages to decrease risk of deadlocks
  • Added SPARQL_SELECT_FED role
  • Added RDF_DUMP_GRAPH and RDF_DUMP_NQUADS as built-in stored procedures
  • Added missing JSON support function to format output of ASK query
  • Added support to fine tune size of memory pool used by SPARQL constructs
  • Fixed /sparql-auth requests should not be redirect to /sparql
  • Fixed RDF loading re. transaction modes.
  • Fixed SPARQL endpoint description document
  • Fixed functions for making rdf literals must return dc of boxes
  • Fixed incorrect handling of UTF8 characters on SPARQL HTTP endpoint
  • Fixed issue converting RDF metadata from older databases
  • Fixed issue with ANYTIME query timeout values
  • Fixed issue with JSON-LD and JSON-LD (with context) mime types
  • Fixed issue with SPARQL ASK in embedded PL
  • Fixed issue with SPARQL variables containing unicode characters
  • Fixed issue with incomplete RDF box
  • Fixed old proxy and redirect handling in RDF_HTTP_URL_GET
  • Fixed reporting when new graph is created
  • Fixed use a standard namespace URI for special bif: and sql: with regards to SPARQL Built-in functions
  • Removed redundant checkpoints when creating new database

Native JDBC, Jena, and RDF4j Providers

  • Added optimizations for bulk deleting triples
  • Added support for all JDBC Transaction Isolation levels
  • Added new class VirtStreamRDF for support stream uploading to Virtuoso
  • Fixed issue with closing/leaking JDBC statements
  • Fixed issue with exceptions
  • Fixed issue using batchSize
  • Fixed SQLException handler for better conversion to JenaException

Native Faceted Browsing Engine

  • Added check if automated label fill is enabled
  • Added some nofollow and noindex hints for bots
  • Added support to use built-in rdf_label and don’t cache the object value twice
  • Fixed UTF-8 encoding issues
  • Fixed XSS issue
  • Fixed bad url encoding
  • Fixed caching query via plink
  • Fixed decoding of percent-encoded URLs when used as labels
  • Fixed detection of label language
  • Fixed do not make default http links
  • Fixed do not remove user defined graphs
  • Fixed efficiency of label language lookup
  • Fixed endpoint creation
  • Fixed issue with blank nodes
  • Fixed issue with sid
  • Fixed issue with sponge link in header
  • Fixed make ifps secure
  • Fixed missing graph group
  • Fixed only make link when protocol scheme is safe (http, https, ftp)
  • Fixed order labels by accept-language
  • Fixed return 404 if usage.vsp is called with bad url
  • Fixed several issues in About: block
  • Fixed usage.vsp for safe links
  • Fixed whitespace in Link: header
  • Updated S ranking algorithm

Database Administration Service (“Conductor”)

  • Added faster check for version of installed VAD package
  • Added drop statement and better reporting (ala-isql)
  • Added fingerprint info for system root key
  • Added git hash to the build info
  • Added warning to modifying registry by hand
  • Fixed dependency check on ODS
  • Fixed ensure DB qualifier for conductor
  • Fixed fully qualified view name and use DB qual for all conductor sql
  • Fixed import of user’s key
  • Fixed installation of VADs can only be performed by dba account
  • Fixed issue with encoding
  • Fixed issue with non-dba user login causing inf redirects
  • Fixed missing check for ODS Briefcase
  • Fixed LDP metadata
  • Fixed the the rr:graph was not taken from RML doc * UI changes
  • Fixed UI form related to importing RDF files
  • Fixed UI form related to RDF push subscriptions
  • Fixed url encoding

WebDAV Filesystem

  • Added helper function for fixing DAV COL_FULL_PATH
  • Fixed encoding-type for text/* files
  • Fixed handling of content type
  • Fixed issue removing properties
  • Fixed LDP metadata
  • Fixed unhandled error when COL_FULL_PATH is NULL
  • Removed redundant join with all graphs


  • Added GEOS-isValid BIF

Native R2RML Processor

  • Fixed handling tableName attribute as per spec
  • Fixed issues with rr:graph mapping from R2RML source document

Additional Information