Virtuoso 08.03.3330 Release Notes (draft)
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”)
This release includes new Lightweight Single Sign-on authentication support and the ability to specify a user’s password in create user
commands; improvements include memory management, the JSON-LD parser, CSV import/attach and websocket support in the web server; many minor bug fixes in edge-cases of SQL and SPARQL queries.
Also see:
Virtuoso DBMS Engine Core
- Added initial watchdog on VMsize
- Added statistics for chash mempool
- Added uptime and current page faults to status()
- Added new JSON-LD parser mode for handling blank nodes (bug#19404)
- Added
create user .. with password
andidentified by
syntax - Fixed several edge-cases in SQL compiler
- Fixed issue getting lock information for status()
- Fixed handling of parallel queries
- Fixed concurrency issue in replication flush queue
- Fixed issues with CSV import/attach
- Fixed sql fragment may have div operation (bug#19433)
- Fixed
NaN
behaviour incmp_double
same as ordering (bug#19426) - Fixed issue with
TOP 1
on a cursor (bug#19301) - Fixed issue with
TOP
not working whenDISTINCT
is used - Fixed issue with outer hash join with
GROUP BY
- Fixed issues with OpenAPI server responses
- Fixed issue with
IN
when using top/orderby/groupby on same colunm (bug#18915)
HTTP (Web) Server
- Added support for ping/pong to websocket
- Added support for binary frames to websocket
- Fixed websocket framing on text messages
- Fixed HTTP 101/204/304 responses MUST not have content
- Fixed issue with double escaped
path
- Fixed http log records partial request over 4k
- Fixed clear http method at session cleanup
- Fixed HTTP CORS pattern support
- Fixed issue parsing partial
Accept
headers - Fixed issue getting datatype from
rdf box
- Fixed issue when response is chunked/gzip by app
- Fixed do not use gzip if no content is allowed
- Fixed issue sending Content-Length when not expected
- Fixed REST services registered as json return should not return HTML error body
SPARQL Query Processor
- Added support for GRAPH decorations in TriG (bug#19412)
- Fixed several edge cases in SPARQL compiler
- Fixed issues with Default Graph IRI not picked up from SYS_SPARQL_HOSTS (bug#19301)
- Fixed issue with user aggregate and constant in group by
- Fixed issue with very long sparql queries
Data Transformation Middleware Layer (“Sponger”)
Note: XC
= Extractor Cartridge; MC
= Meta Cartridge.
- Github XC: retrieve more issues and comments; misc bug fixes
- JSON-LD XC: use native JSON parser; data-quality tidy-ups
- HTML+V XC: OpenGraph and Twitter Card handling tidy-ups
Faceted Search and Browsing
- Fixed issue with labels
- Fixed issue with grants
Virtuoso Authentication Layer (VAL)
- Added support for OAuth 2.0 client_secret_jwt authentication
- Added support for API keys
- Added support for Lightweight Single Sign-on
- Fixed issues with reuse session
- Fixed issues with solid
- Fixed allow registration with non-local accounts
- Fixed empty vhost string falls back to default host
- Fixed use high grade 2048-bit key
- Fixed terminal/http basic/digest client logins
- Fixed issues using XSLT on
/sparql
endpoint - Fixed for digest.basic use realm specified by the VD
HTML-based Admin Interface (“Conductor”)
- Added support for showing/hiding password in login dialog
- Fixed issue refreshing status variables
- Fixed issues with CSV import
- Fixed redundant delete on optional & more often non-existing table
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 of the following updates/upgrades. 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 —
apt update && apt upgrade
- RedHat —
yum update
Manually overwriting an older binary with the latest edition
Documentation: 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.