All, It seems that I have managed to get Virtuoso to hang itself at 100% CPU by submitting a pretty insane query. This is on 5.0.10-RC4. Now, top says
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 20084 root 20 0 666m 421m 8696 S 100 11.1 116:14.01 virtuoso-t and only 10 of those minutes are real queries. It has been running like this for the rest of the time. I found two parameters in the virtuoso.ini, which I have now set MaxQueryCostEstimationTime = 120 ; in seconds MaxQueryExecutionTime = 10 ; in seconds But neither seemed to have any effect on this problem. This is the query being submitted: prefix mv: <http://www.computas.com/mediasone#> prefix cc: <http://creativecommons.org/ns#> prefix mm: <http://musicbrainz.org/mm/mm-2.1#> prefix xsd: <http://www.w3.org/2001/XMLSchema#> prefix mo: <http://purl.org/ontology/mo#> prefix dcmi: <http://purl.org/dc/dcmitype/> prefix lingvoj: <http://www.lingvoj.org/ontology#> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> prefix foaf: <http://xmlns.com/foaf/0.1/> prefix owl: <http://www.w3.org/2002/07/owl#> prefix dct: <http://purl.org/dc/terms/> prefix imdb: <http://www.csd.abdn.ac.uk/~ggrimnes/dev/imdb/IMDB#> prefix geo: <http://www.geonames.org/ontology#> prefix wgs: <http://www.w3.org/2003/01/geo/wgs84_pos#> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> prefix nfi: <http://www.wizardis.com.au/2005/12/MAVIS#> prefix mo: <http://www.computas.com/mediasone-ontologi#> prefix mv: <http://www.computas.com/mediasone#> prefix phono: <http://www.phonofile.com/XMLSchema#> prefix sub: <http://xmlns.computas.com/sublima#> SELECT ?title ?description ?albumtitle ?archivename ?translatorname ?themename ?genrename ?locationname ?photographername ?depictsname ?directorname ?scriptwritername ?productioncompanyname ?musicComposername ?musicPerformername ?lyricistname ?conductorname FROM <http://msone.computas.no/graphs/instance/nfi> WHERE { OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> dct:title ?title . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> dct:description ?description . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mm:Album ?albumuri . ?albumuri dct:title ?albumtitle . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:altTitle ?alttitle . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> dct:source ?archiveuri . ?archiveuri rdfs:label ?archivename . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:author ?authoruri . ?authoruri foaf:name ?authorname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:translator ?translatoruri . ?translatoruri foaf:name ?translatorname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:releaseYear ?releaseyear . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:keyword ?themeuri . ?themeuri rdfs:label ?themename . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mo:genre ?genreuri . ?genreuri rdfs:label ?genrename . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:location ?locationuri . ?locationuri geo:name ?locationname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:photographer ?photographeruri . ?photographeruri foaf:name ?photographername . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> foaf:depicts ?depictsuri . ?depictsuri foaf:name ?depictsname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:ageLimit ?agelimit . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:director ?directoruri . ?directoruri foaf:name ?directorname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:scriptwriter ?scriptwriteruri . ?scriptwriteruri foaf:name ?scriptwritername . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:productionCompany ?productioncompanyuri . ?productioncompanyuri foaf:name ?productioncompanyname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:musicComposer ?musicComposeruri . ?musicComposeruri foaf:name ?musicComposername . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:musicPerformer ?musicPerformeruri . ?musicPerformeruri foaf:name ?musicPerformername . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:lyricist ?lyricisturi . ?lyricisturi foaf:name ?lyricistname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> mv:conductor ?conductoruri . ?conductoruri foaf:name ?conductorname . } OPTIONAL { <http://www.wizardis.com.au/2005/12/MAVIS#TitleWorkkey41402> sub:extinfo ?dbpediatext . } } It is submitted by an HTTP POST operation. We have now rewritten the query to be more sane, but arguably, submitting something like this effectively DoSes Virtuoso, which is a bad thing. Kind regards Kjetil Kjernsmo -- Senior Knowledge Engineer Mobile: +47 986 48 234 Email: kjetil.kjern...@computas.com Web: http://www.computas.com/ | SHARE YOUR KNOWLEDGE | Computas AS PO Box 482, N-1327 Lysaker | Phone:+47 6783 1000 | Fax:+47 6783 1001