Jérôme wrote: > Le 11/10/11 11:36, Paolo Castagna a écrit : >> >> Jérôme wrote: >>> Le 11/10/11 11:14, Paolo Castagna a écrit : >>>> Jérôme wrote: >>>>> Le 11/10/11 10:08, Andy Seaborne a écrit : >>>>>> Jérôme, >>>>>> >>>>>> Sorry if you've said this before in previous emails but what's the >>>>>> query and what's the data like? When did you last update LARQ? >>>>> Hi Andy, >>>>> >>>>> I did my last LARQ update 2 days ago. The problem is not about datas, >>>>> because the result is the same with the books.ttl file: 0 result >>>>> with a >>>>> very simple query like: >>>>> >>>>> PREFIX pf:<http://jena.hpl.hp.com/ARQ/property#> >>>>> SELECT ?doc >>>>> { >>>>> ?lit pf:textMatch 'Potter' . >>>>> ?doc ?p ?lit >>>>> } >>>>>> I'm trying to find out if something in the chain of packages has >>>>>> changed and whether we've introduced a a regression in ARQ or LARQ. >>>>>> >>>>>> The only ARQ change I can think of relates to named graphs but you're >>>>>> not using named graphs and the change to correctly handle property >>>>>> functions would only go from 0 to some results. >>>>>> >>>>>> You have the same data available via<#books> and via<#dataset> -- >>>>>> does the query work one route and not the other or are both now >>>>>> showing 0 results? >>>>> No, simple SPARQL queries works fine. I only have problem on the >>>>> lucene >>>>> indexed datas with LARQ queries. >>>> The problem is that somehow your Lucene index is empty or non existing. >>>> >>>> If the /tmp/lucene directory exists and it's empty or it contains an >>>> empty Lucene index when you start Fuseki. LARQ will *not* index your >>>> data. >>>> >>>> LARQ will index your data if and only if you point it at a non existing >>>> directory. When you start Fuseki, LARQ should create the /tmp/lucene >>>> directory for you and index your data. >>>> >>>> When I need to debug problems involving Lucene indexes I use: >>>> http://www.getopt.org/luke/luke-0.9.9/lukemin-0.9.9.jar >>>> ... it's very useful to inspect a Lucene index. I suspect yours is >>>> empty or non-existing. >>>> >>>> You can also try to use larq.larqbuilder to build your Lucene index >>>> manually at the beginning, but it would be much better if LARQ does >>>> automatically this for you (as it should be). Try this: >>>> >>>> 1. make sure Fuseki or your app is not running >>>> 2. java -cp fuseki-0.2.1-SNAPSHOT-sys.jar larq.larqbuilder \ >>>> --allow-duplicates --larq=/tmp/lucene \ >>>> --desc=/path/to/your/fuseki/config.ttl >>>> (one line!) >>>> 3. check your Lucene index in the /tmp/lucene directory >>>> 4. start Fuseki as usual >>> The larqbuilder command-line failed: >>> java -cp target/fuseki-0.2.1-SNAPSHOT-sys.jar larq.larqbuilder >>> --allow-duplicates --larq=/tmp/lucene --desc=config.ttl >>> com.hp.hpl.jena.sparql.ARQException: More than one: var ?root >>> at >>> com.hp.hpl.jena.sparql.util.QueryExecUtils.getOne(QueryExecUtils.java:354) >>> >>> at >>> com.hp.hpl.jena.sparql.util.graph.GraphUtils.findRootByType(GraphUtils.java:191) >>> >>> >>> at >>> com.hp.hpl.jena.sparql.core.assembler.AssemblerUtils.build(AssemblerUtils.java:97) >>> >>> >>> at arq.cmdline.ModAssembler.create(ModAssembler.java:67) >>> at >>> arq.cmdline.ModDatasetAssembler.createDataset(ModDatasetAssembler.java:43) >>> >>> at arq.cmdline.ModDataset.getDataset(ModDataset.java:34) >>> at larq.larqbuilder.exec(larqbuilder.java:84) >>> at arq.cmdline.CmdMain.mainMethod(CmdMain.java:97) >>> at arq.cmdline.CmdMain.mainRun(CmdMain.java:59) >>> at arq.cmdline.CmdMain.mainRun(CmdMain.java:46) >>> at larq.larqbuilder.main(larqbuilder.java:50) >> Ok, this is because larq.larqbuilder command does not support multiple >> datasets >> (as they have been introduced only recently in Fuseki's config format). >> >> Could you try to remove this from your config.ttl: >> >> <#books> rdf:type ja:RDFDataset ; >> rdfs:label "Books" ; >> ja:defaultGraph >> [ rdfs:label "discours_de_la_methode.rdf" ; >> a ja:MemoryModel ; >> ja:content [ja:externalContent<file:Data/file.rdf> ] ; >> ] ; >> . >> >> And, make sure you have only one dataset (i.e.<#dataset> rdf:type >> tdb:DatasetTDB)? >> >> Try again: >> >> 1. make sure Fuseki or your app is not running >> 2. rm -rf /tmp/lucene >> 3. java -cp fuseki-0.2.1-SNAPSHOT-sys.jar larq.larqbuilder \ >> --allow-duplicates --larq=/tmp/lucene \ >> --desc=/path/to/your/fuseki/config.ttl >> (one line!) >> 4. check your Lucene index in the /tmp/lucene directory >> 5. start Fuseki as usual > > I think it's really better: my /tmp/lucene contains files. One new > problem...(sorry...), > I'm not able to test it because before running all my application, i've > tried a mvn install of LARQ (to compile and install my own changes) - i > get a dependency error: > Failed to execute goal on project jena-larq: Could not resolve > dependencies for project > org.apache.jena:jena-larq:jar:0.2.2-incubating-SNAPSHOT: Could not find > artifact org.apache.jena:jena-tdb:jar:0.8.11-SNAPSHOT in > apache.snapshots (http://repository.apache.org/snapshots) > > What are goupId and artefactId for TDB? Have they changed...?
Hi Jérôme, you can browse any Maven repository, to check what are the SNAPSHOTs available: https://repository.apache.org/content/groups/snapshots/org/apache/jena/jena-tdb/ If you do that, you'll see that the version you need to use now is: 0.9.0-incubating-SNAPSHOT In general, the first thing I do when Maven fail to retrieve a dependency is to double check manually with a browser if the artifact is actually there. Most of the time, the problem is because I have an error or a typo in my pom.xml file. Check groupId, check artifactId, check version. This is what I do. Hopefully, we are getting there! Paolo > >> >> larq.larqbuilder source code is here: >> https://svn.apache.org/repos/asf/incubator/jena/Jena2/LARQ/trunk/src/main/java/larq/larqbuilder.java >> >> >> Once again, ideas on how to improve it (and patches) are welcome! >> >> Paolo >> >>> >>> The /tmp/lucene dir is created, with the empty write.lock file. >>> >>>> Does this work for you? >>>> >>>> Paolo >>>> >>>>> Jérôme >>>>>> Andy >>>>>> >>>>>> >>>>>> >>>>>> On 10/10/11 17:01, Paolo Castagna wrote: >>>>>>> Hi Jérôme, >>>>>>> first of all, thanks for helping out testing the LARQ >>>>>>> 0.2.2-incubating-SNAPSHOT >>>>>>> and for your patience. ;-) >>>>>>> >>>>>>> This hopefully will help to spot problems early one and reduce >>>>>>> problems once ARQ >>>>>>> and LARQ are released within Apache. >>>>>>> >>>>>>> Jérôme wrote: >>>>>>>> Hi, >>>>>>>> >>>>>>>> i've recently made an svn up on my LARQ directory. >>>>>>>> >>>>>>>> Now, my LARQ queries return 0 solution (they returned before). >>>>>>>> >>>>>>>> I'm using: >>>>>>>> - fuseki 0.2.1-SNAPSHOT >>>>>>>> -arq 2.8.9-SNAPSHOT >>>>>>>> -larq 0.2.2-incubating-SNAPSHOT >>>>>>> According to the LARQ's pom.xml file [1], LARQ >>>>>>> 0.2.2-incubating-SNAPSHOT now >>>>>>> depends on the new ARQ SNAPSHOTs. >>>>>>> Precisely, it depends on >>>>>>> org.apache.jena:jena-arq:2.8.9-incubating-SNAPSHOT >>>>>>> Please note the new groupId and artifactId for ARQ. >>>>>>> >>>>>>> New ARQ SNAPSHOTs are available here [2]. >>>>>>> >>>>>>> [1] >>>>>>> https://svn.apache.org/repos/asf/incubator/jena/Jena2/LARQ/trunk/pom.xml >>>>>>> >>>>>>> >>>>>>> [2] >>>>>>> https://repository.apache.org/content/repositories/snapshots/org/apache/jena/jena-arq/2.8.9-incubating-SNAPSHOT/ >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>>> -lucene 3.1.0 >>>>>>>> >>>>>>>> My config.ttl file has not changed: >>>>>>>> >>>>>>>> [...] >>>>>>>> <#books> rdf:type ja:RDFDataset ; >>>>>>>> rdfs:label "Books" ; >>>>>>>> ja:defaultGraph >>>>>>>> [ rdfs:label "discours_de_la_methode.rdf" ; >>>>>>>> a ja:MemoryModel ; >>>>>>>> ja:content [ja:externalContent<file:Data/file.rdf> >>>>>>>> ] ; >>>>>>>> ] ; >>>>>>>> . >>>>>>>> >>>>>>>> <#dataset> rdf:type tdb:DatasetTDB ; >>>>>>>> tdb:location "/tmp/tdb" ; >>>>>>>> ja:textIndex "/tmp/lucene" ; >>>>>>>> # Query timeout on this dataset (milliseconds) >>>>>>>> ja:context [ ja:cxtName "arq:queryTimeout" ; ja:cxtValue >>>>>>>> "1000" ] ; >>>>>>>> ## tdb:unionDefaultGraph true ; >>>>>>>> >>>>>>>> >>>>>>>> Before running the fuseki server, i build my triple store with the >>>>>>>> command-line: >>>>>>>> java -cp target/fuseki-0.2.1-SNAPSHOT-sys.jar tdb.tdbloader >>>>>>>> --loc=/tmp/tdb Data/file.rdf >>>>>>> Can you please try: >>>>>>> >>>>>>> - stop Fuseki >>>>>>> - delete /tmp/lucence >>>>>>> - restart Fuseki >>>>>>> >>>>>>> LARQ will now behave like this: >>>>>>> >>>>>>> - if the directory exists with a Lucene index, it will leave it >>>>>>> untouched >>>>>>> - if the directory does not exists it will create it and >>>>>>> index your >>>>>>> data >>>>>>> >>>>>>> What do you have in your /tmp/lucene directory? >>>>>>> >>>>>>>> So, i've no error - juste 0 result... >>>>>>>> >>>>>>>> Any ideas? >>>>>>>> >>>>>>>> Thank you. >>>>>>>> >>>>>>> Let us know how it goes, >>>>>>> Paolo >
