SPARQL - Federated query fails although SILENT keyword presented
Running a simple federated query on a non-existing endpoint fails, although the SILENT keyword is presented.
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT DISTINCT ?s ?mbox
WHERE
{
?s a foaf:Person .
SERVICE SILENT <http://non-existing.org> {?s foaf:knows/foaf:mbox ?mbox }
}
Results in the following error: Virtuoso HTCLI Error HC001: Connection Error in HTTP Client.
By SPARQL 1.1 Federated Query, section 2.3.
In the following query the SILENT keyword is present. If the remote SPARQL endpoint is not available because the SPARQL endpoint does not exist, it is down or it is not accessible the query will return a solution sequence of one empty solution mapping.
Would you please provide the specific version of Virtuoso on which this was observed?
A few quick tests suggest this was broken between internal engine versions 3322 and 3233, as I see the behavior you describe on URIBurner.com, running Enterprise Edition 08.03.3322 (git_head 170f8ad02e) from codebase as of Apr 12 2022, but not on our experimental Wikidata mirror, running Open Source Edition 07.20.3233 (git_head 0431ba360) from codebase as of Feb 25 2022.
I'm betting you're now running a VOS build from stable/7, and will find this is solved with a VOS build from develop/7.
$ virtuoso-t --help
Virtuoso Open Source Edition (Column Store) (multi threaded)
Version 7.2.7-dev.3233-pthreads as of Apr 5 2022 (000000)
Compiled for Mac OS X (Intel x86_64) (x86_64-apple-darwin21.3.0)
Copyright (C) 1998-2022 OpenLink Software
I just did a fresh compilation from develop branch and the issue still persist.
Well, that's frustrating! Development will have to take a look at this.