[ 
https://issues.apache.org/jira/browse/JENA-1121?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15114326#comment-15114326
 ] 

Andy Seaborne commented on JENA-1121:
-------------------------------------

I have managed to recreate this partially.

What I am not seeing is that an index built with 2.3.0 runs fast in 2.3.1, nor 
a 2.3.1 built-index running slowly with 2.3.0. (I'm not aware of any on-disk 
changes that would lead to that either.)

Please be aware that {{DROP ALL}} does not clear the text index. This can be 
slight confusing but the text index is not reference counted for the data 
loaded so deletes do not go to the index. {{DROP ALL}} is not handled specially.

> Performance regression in Jena 3.0.1 / Fuseki 2.3.1
> ---------------------------------------------------
>
>                 Key: JENA-1121
>                 URL: https://issues.apache.org/jira/browse/JENA-1121
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: Jena
>    Affects Versions: Jena 3.0.1, Fuseki 2.3.1, Jena 3.1.0, Fuseki 2.4.0
>         Environment: Mac OS X 10.10.5, iMac, 3.4 GHz Intel Core i7, 32 GB RAM
>            Reporter: Benjamin Geer
>            Priority: Critical
>              Labels: performance
>
> We seem to have encountered a severe performance regression in Jena 3.0.1 / 
> Fuseki 2.3.1 as compared with Jena 3.0.0 / Fuseki 2.3.0. A number of our 
> queries are running between 2 and 20 times slower. Here's one small example 
> with configuration for Fuseki. With Fuseki 2.3.0, the query below takes about 
> 200 milliseconds. With Fuseki 2.3.1, it takes 9 seconds. I've also tried it 
> with the latest Fuseki snapshot 
> (apache-jena-fuseki-2.4.0-20160117.183513-33.zip), and got the same result as 
> with the 2.3.1 release.
> Here's the test data and configuration:
> https://www.dropbox.com/s/b9aepexij5e7noj/jena-performance-test.zip?dl=0
> Here's the query:
> {noformat}
> prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
> prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>
> prefix knora-base: <http://www.knora.org/ontology/knora-base#>
> SELECT DISTINCT
>     ?resourceIri
>     ?resourceLabel
>     (SAMPLE(?anyMatch) AS ?match)
> WHERE {
>     BIND(STR("de") AS ?preferredLanguage)
>     BIND(STR("en") AS ?fallbackLanguage)
>     ?s <http://jena.apache.org/text#query> 'Zeitglöcklein' .
>     MINUS {
>         ?s knora-base:isDeleted true .
>     }
>     OPTIONAL {
>         ?s a ?valueObjectType .
>         ?valueObjectType rdfs:subClassOf+ knora-base:Value .
>         ?resIri ?resourceProperty ?s .
>         ?s knora-base:valueHasString ?literal .
>         OPTIONAL {
>             ?resourceProperty rdfs:label 
> ?preferredLanguageResourcePropertyLabel .
>             FILTER (LANG(?preferredLanguageResourcePropertyLabel) = 
> ?preferredLanguage) .
>         }
>         OPTIONAL {
>             ?resourceProperty rdfs:label 
> ?fallbackLanguageResourcePropertyLabel .
>             FILTER (LANG(?fallbackLanguageResourcePropertyLabel) = 
> ?fallbackLanguage) .
>         }
>         OPTIONAL {
>             ?resourceProperty rdfs:label ?anyLanguageResourcePropertyLabel .
>         }
>         BIND(COALESCE(str(?preferredLanguageResourcePropertyLabel), 
> str(?fallbackLanguageResourcePropertyLabel), 
> str(?anyLanguageResourcePropertyLabel)) AS ?propertyLabel)
>         BIND(CONCAT(STR(?valueObjectType), "|", STR(?propertyLabel), "|", 
> STR(?literal)) AS ?anyMatch)
>         MINUS {
>             ?resIri knora-base:isDeleted true .
>         }
>     }
>     BIND(COALESCE(?resIri, ?s) AS ?resourceIri)
>     ?resourceIri a ?resourceClass .
>     ?resourceClass rdfs:subClassOf+ knora-base:Resource .
>     ?resourceIri rdfs:label ?resourceLabel .
> }
> GROUP BY
>     ?resourceIri
>     ?resourceLabel
> ORDER BY ?resourceIri
> {noformat}
> Best regards,
> Benjamin Geer



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to