Hi everybody. I am executing a SPARUL query in a large graph (over 150M triples):
SPARQL DEFINE sql:log-enable 3 WITH <graph> DELETE { ?s ?p ?o} INSERT {?s ?p ?newLabel} WHERE {?s ?p ?o . FILTER (isLiteral(?o) && REGEX(STR(?o),"some_string:","i")) . BIND(REPLACE(STR(?o), "some_string:", "", "i") as ?newLabel) } After an hour or two, I get the following error: *** Error 42000: [Virtuoso Driver][Virtuoso Server]CL...: The array extend 1048576 is less than requested 1310721 Googling the above error, I found a suggestion of splitting the above query using a limit. However, it seemed that the limit was so small that this is not an option. Please note that I run on a 32GB, 8x VM. My questions: 1. Is there some kind of setting in virtuoso.ini that could change this behaviour? 2. As you can see from the above query, all I am trying to do is a replace operation on literals. Is there an alternative more efficient way to do it? e.g. using direct SQL or refactoring the SPARUL query somehow? Perhaps I missed something... Kind regards, Pantelis Natsiavas
------------------------------------------------------------------------------
_______________________________________________ Virtuoso-users mailing list Virtuoso-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/virtuoso-users