Uploaded image for project: 'Gateway'
  1. Gateway
  2. GTWY-2660

RDF harvest query exception

XMLWordPrintable

    • Icon: Defect Defect
    • Resolution: Done
    • Icon: Major Major
    • Recycle Bin
    • 2.0.0-ALPHA1
    • None
    • None

      RDFSynchronization is causing exceptions with certain model names. These names include a slash character in the name. For example:

      "ECHAM5 / MPI OM"

      The slash '/' character likely needs to be escaped. It is unclear how significantly this error affects the RDF harvesting process.

      This was observed on v 2.0.0-ALPHA. It is likely this affects other versions.

      Tomcat log with exception follows:

      2011-08-12 16:35:21,580 sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl [DEBUG]: Executing stub query:SELECT type, uuid, lastUpdate, version FROM {esg:model_echam5_/_mpi_om} rdf:type {type}, [{esg:model_echam5_/_mpi_om} esg:hasUUID {uuid}], [{esg:model_echam5_/_mpi_om} esg:hasLastUpdate {lastUpdate}], [{esg:model_echam5_/_mpi_om} owl:versionInfo {version}] LIMIT 1 USING NAMESPACE esg = <http://www.earthsystemgrid.org/esg.owl#>
      2011-08-12 16:35:21,581 sgf.gateway.service.query.impl.sesame.Sesame2Service [WARN]: Lexical error at line 1, column 63. Encountered: "/" (47), after : ""
      org.openrdf.query.MalformedQueryException: Lexical error at line 1, column 63. Encountered: "/" (47), after : ""
             at org.openrdf.query.parser.serql.SeRQLParser.parseQuery(SeRQLParser.java:68)
             at org.openrdf.query.parser.QueryParserUtil.parseQuery(QueryParserUtil.java:51)
             at org.openrdf.query.parser.QueryParserUtil.parseTupleQuery(QueryParserUtil.java:72)
             at org.openrdf.repository.sail.SailRepositoryConnection.prepareTupleQuery(SailRepositoryConnection.java:134)
             at org.openrdf.repository.sail.SailRepositoryConnection.prepareTupleQuery(SailRepositoryConnection.java:41)
             at org.openrdf.repository.base.RepositoryConnectionBase.prepareTupleQuery(RepositoryConnectionBase.java:110)
             at sgf.gateway.service.query.impl.sesame.Sesame2Service.executeTupleQuery(Sesame2Service.java:774)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl.getTripleStoreObjectStub(RDFsynchronizerImpl.java:472)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl.access$100(RDFsynchronizerImpl.java:85)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl$2.doInTransaction(RDFsynchronizerImpl.java:306)
             at org.springframework.transaction.support.TransactionTemplate.execute(TransactionTemplate.java:130)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl.synchronizeMany(RDFsynchronizerImpl.java:277)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerImpl.synchronize(RDFsynchronizerImpl.java:202)
             at sgf.gateway.service.query.impl.harvest.RDFsynchronizerJob.execute(RDFsynchronizerJob.java:67)
             at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
             at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
             at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
             at java.lang.reflect.Method.invoke(Method.java:597)
             at org.springframework.util.MethodInvoker.invoke(MethodInvoker.java:273)
             at org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean$MethodInvokingJob.executeInternal(MethodInvokingJobDetailFactoryBean.java:264)
             at org.springframework.scheduling.quartz.QuartzJobBean.execute(QuartzJobBean.java:86)
             at org.quartz.core.JobRunShell.run(JobRunShell.java:216)
             at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:549)
      Caused by: org.openrdf.query.parser.serql.ast.TokenMgrError: Lexical error at line 1, column 63. Encountered: "/" (47), after : ""
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilderTokenManager.getNextToken(SyntaxTreeBuilderTokenManager.java:2178)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.jj_ntk(SyntaxTreeBuilder.java:3201)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.Node(SyntaxTreeBuilder.java:1303)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.BasicPathExpr(SyntaxTreeBuilder.java:1040)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.PathExpr(SyntaxTreeBuilder.java:1017)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.UnionPathExpr(SyntaxTreeBuilder.java:982)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.PathExprList(SyntaxTreeBuilder.java:942)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.From(SyntaxTreeBuilder.java:773)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.QueryBody(SyntaxTreeBuilder.java:718)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.SelectQuery(SyntaxTreeBuilder.java:387)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.TupleQuery(SyntaxTreeBuilder.java:352)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.TupleQuerySet(SyntaxTreeBuilder.java:148)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.Query(SyntaxTreeBuilder.java:131)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.QueryContainer(SyntaxTreeBuilder.java:42)
             at org.openrdf.query.parser.serql.ast.SyntaxTreeBuilder.parseQuery(SyntaxTreeBuilder.java:23)
             at org.openrdf.query.parser.serql.SeRQLParser.parseQuery(SeRQLParser.java:34)
             ... 22 more

              dharper Danielle Harper (Inactive)
              ejn Eric Nienhouse
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Created:
                Updated:
                Resolved: