Virtuoso 08.03.3332 Release Notes
We are pleased to announce the immediate availability of a new Virtuoso Maintenance Release comprising a wide variety of feature enhancements and bug fixes across the following functionality realms:
- Virtuoso DBMS Engine Core
- Web Server
- SPARQL Query Processor
- Data Transformation Middleware Layer (“Sponger”)
- Faceted Search and Browsing
- Virtuoso Authentication Layer (VAL)
- HTML-based Admin Interface (“Conductor”)
- R2RML
- OpenLink AI Layer (OPAL)
This release includes important enhancements for the Personal Assistant as well as minor bug fixes for SQL and SPARQL query edge-cases.
Also see:
Virtuoso DBMS Engine Core
- Added new
MaxTempDBPages
setting tovirtuoso.ini
- Added temp space usage in db activity
- Added RSA-PSS sign/verify padding option
- Added
pkcs8
pem
export for private keys - Fixed issue when out of disk space on temp db
- Fixed issue re-initializing ini file reader
- Fixed issue with subscription sending back message to published
- Fixed issue with user defined types (UDTs)
- Fixed issue with
GROUP BY
/ORDER BY
onLEFT OUTER JOIN
- Fixed issue calling
concat(wide, utf8)
HTTP (Web) Server
- Added
PUT
/DELETE
http methods - Added support for custom
%T
and%D
http log format - Added marker for REST call when importing the OAS call
- Added
DB.DBA.VHOST_GET_OPTION
to take keyword option from HTTP virtual directory options - Added OIDC security scheme support for OAS docs
- Added more reserved OAS vars and option for API key test
- Added inlined sanity check for HTTP headers in OAS wrappers
- Fixed checking HTTP status codes
- Fixed issues with OpenAPI generation
- Fixed issue with
"Content-Encoding: gzip"
- Fixed use
get_usec_real_time()
for rate limiting - Fixed issue casting non-CHAR data when printing MIME part
- Fixed memory leak and error when service sets error status code
- Fixed resolve global ref params in OAS
- Fixed OAS import should also state
json_output
is internal flag - Fixed return 404 when SOAP procedure is missing
- Fixed issue with length calculation in
rdf_encode_for_uri()
- Fixed OAS error reporting
- Fixed issue uploading large files via multipart
- Fixed issues with (reserved) parameter names
- Fixed check if the internal path is already in REST interface
- Fixed cosmetic issue; do not add -[method] or if get
- Fixed OpenAPI generator to handle name with more than 2 dots, e.g.,
a.b.x.my.proc
- Fixed handling of
[type]
array in OAS JSON schema def
SPARQL Query Processor
- Fixed issue with key estimates
- Fixed
BNODE()
w/o arguments should always generate unique node number - Fixed OpenAPI document generation security scheme
- Fixed incremental estimate on transitive with unbound input
- Fixed use the input cardinality for trans dt; the output unit cost should depend on
- Fixed issue with transitivity variables
- Fixed missing grouping variable in
STORE_NS_PREFIXES_DECL()
Data Transformation Middleware Layer (“Sponger”)
- Added error checking for
SDATA_IMPORT()
- OPML Extractor Cartridge rewritten targeting the schema.org ontology
- Fixed single-cartridge sponging using HTML+variants Extractor Cartridge; required for
RelMeAuth
Authentication Protocol
Faceted Search and Browsing
- Fixed issue with graph security
- Fixed issue resizing some
iframes
- Fixed generating QRcode on demand
Virtuoso Authentication Layer (VAL)
- Added Twitter/X OAuth2 Auth API
- Added initial support for JWT API Keys (JAK)
- Fixed generation of evaluation JWT API keys
- Fixed registration of new app is no longer required prior to generating opaque API key
- Fixed error message display
- Fixed code parameter should be URL escaped
- Fixed support for
RelMeAuth
Authentication Protocol via proxy - Fixed registration of scheduler event for expiration
HTML-based Admin Interface (“Conductor”)
- Added OAuth Social Network auth event hook
- Fixed issue with Social Network DETs error handling
R2RML
- Fixed issue associated with mapping a single column as IRI template
OpenLink AI Layer (OPAL)
- Added initial support for OpenAI’s Assistant API
- Added support for importing structured data
- Added support for inline publishing of Assistants via new Metal variant of the Personal Assistant Skin
- Added
gpt-4o-mini
to the list of available Large Language Models (LLMs) - Added import & test pages for web services described using OpenAPI-compliant YAML or JSON documents
- Added support for JWT-based API keys (JAKs) for web service authentication
- Added initial OpalX widget for interacting with Assistants mapped to OPAL’s new Assistant API endpoint
- Updated OpenAI API integration wrappers
- Updated Admin UI
Installer Availability
On-premise Installers and Docker Containers
- On-premise Installers for Linux, macOS, and Windows
- Docker Containers
Cloud Edition Releases for Amazon AWS, Microsoft Azure, and Google Cloud Platform
Amazon AWS
- Virtuoso Virtual Machines for the Amazon AWS Cloud
- OpenLink Data Junction Box Virtual Machine for the Amazon AWS Cloud
- DBpedia Snapshot (Virtuoso PAGO) for Ubuntu on the Amazon AWS Cloud
Microsoft Azure
- Virtuoso Virtual Machines for the Microsoft Azure Cloud
- OpenLink Data Junction Box for the Microsoft Azure Cloud
- DBpedia Snapshot (Virtuoso PAGO) for Ubuntu on the Microsoft Azure Cloud
Google Cloud Platform
Upgrade Notes
For all upgrades
-
Always make sure the database has been properly shut down and the transaction log (
virtuoso.trx
) is empty before performing any update/upgrade. This is easily done by launching Virtuoso with the extra command-line argument, “+checkpoint-only
”. Virtuoso will launch, replay the transaction log, run a checkpoint (which zeroes the transaction log), and exit cleanly. -
Before upgrading any database, it is always a wise precaution to make a proper backup.
Upgrading an existing Cloud Instance Virtual Machine
Execute the relevant command for your operating system distribution:
- Ubuntu and related —
apt update && apt upgrade
- RedHat and related —
yum update
Manually overwriting an older binary with the latest edition
Start with the documentation of manual upgrades.
If you choose to manually replace the Virtuoso server binary (virtuoso-iodbc-t
) in-situ, you MUST also update the libraries in the Virtuoso hosting/
subdirectory due to incompatibilities between the latest binary and previous plugin versions. We also strongly RECOMMEND that you update the VAD packages in the vad/
subdirectory.
Upgrading from any previous version to the latest version
For best results with existing installations, we recommend following our simple step-by-step guide to upgrade from any previous version of Virtuoso to the latest version.