eroux opened a new issue, #1533:
URL: https://github.com/apache/jena/issues/1533

   I have some performance regression in a TDB query that I believe is due to 
`none.opt` being ignored.
   
   - I have a TDB dataset in `/usr/local/fuseki/base/databases/core/`
   - I'm using Jena 4.6.1
   - the file `/usr/local/fuseki/base/databases/core/none.opt` exists, is of 
size 0 and is readable and writable by the user that runs the Fuseki service
   
   I'm testing on this simple query:
   
   ```sparql
   prefix bdr:   <http://purl.bdrc.io/resource/>
   prefix adm:   <http://purl.bdrc.io/ontology/admin/>
   prefix bda:   <http://purl.bdrc.io/admindata/>
   
   SELECT  ?res 
   WHERE {  
     BIND(bdr:MW1KG9453 as ?res)
     ?resRepAdm  adm:adminAbout  ?res ;
             adm:status      bda:StatusReleased
   }
   ```
   
   In that case the query needs to be executed in that order because there are 
tons of triples like `?resRepAdm adm:status      bda:StatusReleased` and only 
one like `?resRepAdm adm:adminAbout bdr:MW1KG9453`.
   
   If I run 
   
   ```sh
   tdbquery --desc=/usr/local/fuseki/base/configuration/core.ttl --file 
test-optim.rq  --explain --time
   ```
   
   I'm getting this output:
   
   [explain.log](https://github.com/apache/jena/files/9567309/explain.log)
   
   with the more relevant part at the end:
   
   ```
   14:27:59 INFO  exec            :: Execute
     ?resRepAdm <http://purl.bdrc.io/ontology/admin/status> 
<http://purl.bdrc.io/admindata/StatusReleased>
     ?resRepAdm <http://purl.bdrc.io/ontology/admin/adminAbout> ?res
   ```
   
   showing that the order of the BGP has been changed by the optimized, despite 
`none.opt` being present.
   
   I have a very similar system on another machine with Jena 3.14.0 and when I 
run the same command line I'm getting this output:
   
   
[explain-3.14.0.log](https://github.com/apache/jena/files/9567342/explain-3.14.0.log)
   
   that executes the BGP in the order of the query:
   
   ```
   14:24:37 INFO  exec                 :: Execute
     (ANY ?resRepAdm <http://purl.bdrc.io/ontology/admin/adminAbout> ?res)
     (ANY ?resRepAdm <http://purl.bdrc.io/ontology/admin/status> 
<http://purl.bdrc.io/admindata/StatusReleased>)
   ```
   
   Is there any way to check the optimization strategy used by Fuseki in the 
log files so that I can debug further?


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to