Hi Delaram,

I have loaded your sample dataset into a latest Virtuoso 7.2.2 open source 
database  (once missing prefixes haad been added) and both queries run 
successfully, although query_3  returns no results. Is the a reason you are 
running 7.2.1 and can you update to the latest 7.2.2 version available in git ?

SQL> DB.DBA.TTLP_MT (file_to_string_output('./delaram.ttl'), '','delaram',0);

Done. -- 44 msec.
SQL> sparql select count(*) from <delaram> where {?s ?p ?o};
callret-0
INTEGER
_______________________________________________________________________________

765

1 Rows. -- 12 msec.
SQL>
SQL> SPARQL PREFIX : <http://gmmo.uga.edu/#>
Type the rest of statement, end with a semicolon (;)> PREFIX rdf: 
<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
Type the rest of statement, end with a semicolon (;)> PREFIX owl: 
<http://www.w3.org/2002/07/owl#>
Type the rest of statement, end with a semicolon (;)> PREFIX rdfs: 
<http://www.w3.org/2000/01/rdf-schema#>
Type the rest of statement, end with a semicolon (;)> PREFIX xsd: 
<http://www.w3.org/2001/XMLSchema#>
Type the rest of statement, end with a semicolon (;)> SELECT ?pdb WHERE {
Type the rest of statement, end with a semicolon (;)> ?oligo0:hasRoot?mono0.
Type the rest of statement, end with a semicolon (;)> ?mono0     
:hasRingAtom?mono0_ring_atom2.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom2  
:ringIndex  "2".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom2   
:hasSideAtom    ?mono0_side_atom2 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom2:sideIndex      "2".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom2:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono0     
:hasRingAtom?mono0_ring_atom3.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom3  
:ringIndex  "3".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom3   
:hasSideAtom    ?mono0_side_atom3 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom3:sideIndex      "3".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom3:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono0     
:hasRingAtom?mono0_ring_atom4.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom4  
:ringIndex  "4".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom4   
:hasSideAtom    ?mono0_side_atom4 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom4:sideIndex      "4".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom4:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono0         
:hasRingAtom?mono0_last_c.
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c       
:ringIndex  "5".
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c         
:hasSideAtom    ?mono0_last_c_side_atom.
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c_side_atom   
    :sideIndex      "+1".
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c_side_atom   
   :orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?oligo1:hasRoot?mono1.
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_anomeric.
Type the rest of statement, end with a semicolon (;)> ?mono1_anomeric  
:ringIndex  "1".
Type the rest of statement, end with a semicolon (;)> ?mono1_anomeric   
:hasSideAtom    ?mono1_anomeric_side_atom .
Type the rest of statement, end with a semicolon (;)> 
?mono1_anomeric_side_atom:sideIndex      "1".
Type the rest of statement, end with a semicolon (;)> 
?mono1_anomeric_side_atom:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom2.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom2  
:ringIndex  "2".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom2   
:hasSideAtom    ?mono1_side_atom2 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom2:sideIndex      "2".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom2:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom3.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom3  
:ringIndex  "3".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom3   
:hasSideAtom    ?mono1_side_atom3 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom3:sideIndex      "3".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom3:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom4.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom4  
:ringIndex  "4".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom4   
:hasSideAtom    ?mono1_side_atom4 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom4:sideIndex      "4".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom4:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono1         
:hasRingAtom?mono1_last_c.
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c       
:ringIndex  "5".
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c         
:hasSideAtom    ?mono1_last_c_side_atom.
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c_side_atom   
    :sideIndex      "+1".
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c_side_atom   
   :orientation"Up".
Type the rest of statement, end with a semicolon (;)> {
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasParent 
?oligo0.
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasChild 
?oligo1.
Type the rest of statement, end with a semicolon (;)> } UNION {
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasParent 
?oligo1.
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasChild 
?oligo0.
Type the rest of statement, end with a semicolon (;)> }
Type the rest of statement, end with a semicolon (;)> ?pdb            :hasOligo 
      ?oligo0.
Type the rest of statement, end with a semicolon (;)> ?pdb            :hasOligo 
      ?oligo1.
Type the rest of statement, end with a semicolon (;)> }
Type the rest of statement, end with a semicolon (;)> ;
pdb
LONG VARCHAR
_______________________________________________________________________________

http://gmmo.uga.edu/#sample
http://gmmo.uga.edu/#sample

2 Rows. -- 6516 msec.
SQL>
SQL> SPARQL PREFIX : <http://gmmo.uga.edu/#>
Type the rest of statement, end with a semicolon (;)> PREFIX rdf: 
<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
Type the rest of statement, end with a semicolon (;)> PREFIX owl: 
<http://www.w3.org/2002/07/owl#>
Type the rest of statement, end with a semicolon (;)> PREFIX rdfs: 
<http://www.w3.org/2000/01/rdf-schema#>
Type the rest of statement, end with a semicolon (;)> PREFIX xsd: 
<http://www.w3.org/2001/XMLSchema#>
Type the rest of statement, end with a semicolon (;)> SELECT ?pdb WHERE {
Type the rest of statement, end with a semicolon (;)> ?oligo0:hasRoot?mono0.
Type the rest of statement, end with a semicolon (;)> ?mono0     :hasRingAtom 
?mono0_ring_atom2.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom2  
:ringIndex  "2".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom2   
:hasSideAtom    ?mono0_side_atom2 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom2:sideIndex      "2".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom2:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono0     
:hasRingAtom?mono0_ring_atom3.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom3  
:ringIndex  "3".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom3   
:hasSideAtom    ?mono0_side_atom3 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom3:sideIndex      "3".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom3:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono0     
:hasRingAtom?mono0_ring_atom4.
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom4  
:ringIndex  "4".
Type the rest of statement, end with a semicolon (;)> ?mono0_ring_atom4   
:hasSideAtom    ?mono0_side_atom4 .
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom4:sideIndex      "4".
Type the rest of statement, end with a semicolon (;)> 
?mono0_side_atom4:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono0         
:hasRingAtom?mono0_last_c.
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c       
:ringIndex  "5".
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c         
:hasSideAtom    ?mono0_last_c_side_atom.
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c_side_atom   
    :sideIndex      "+1".
Type the rest of statement, end with a semicolon (;)> ?mono0_last_c_side_atom   
   :orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?oligo1:hasRoot?mono1.
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_anomeric.
Type the rest of statement, end with a semicolon (;)> ?mono1_anomeric  
:ringIndex  "1".
Type the rest of statement, end with a semicolon (;)> ?mono1_anomeric   
:hasSideAtom    ?mono1_anomeric_side_atom .
Type the rest of statement, end with a semicolon (;)> 
?mono1_anomeric_side_atom:sideIndex      "1".
Type the rest of statement, end with a semicolon (;)> 
?mono1_anomeric_side_atom:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom2.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom2  
:ringIndex  "2".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom2   
:hasSideAtom    ?mono1_side_atom2 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom2:sideIndex      "2".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom2:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom3.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom3  
:ringIndex  "3".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom3   
:hasSideAtom    ?mono1_side_atom3 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom3:sideIndex      "3".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom3:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono1     
:hasRingAtom?mono1_ring_atom4.
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom4  
:ringIndex  "4".
Type the rest of statement, end with a semicolon (;)> ?mono1_ring_atom4   
:hasSideAtom    ?mono1_side_atom4 .
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom4:sideIndex      "4".
Type the rest of statement, end with a semicolon (;)> 
?mono1_side_atom4:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono1         
:hasRingAtom?mono1_last_c.
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c       
:ringIndex  "5".
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c         
:hasSideAtom    ?mono1_last_c_side_atom.
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c_side_atom   
    :sideIndex      "+1".
Type the rest of statement, end with a semicolon (;)> ?mono1_last_c_side_atom   
   :orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?oligo2:hasRoot?mono2.
Type the rest of statement, end with a semicolon (;)> ?mono2     
:hasRingAtom?mono2_anomeric.
Type the rest of statement, end with a semicolon (;)> ?mono2_anomeric  
:ringIndex  "1".
Type the rest of statement, end with a semicolon (;)> ?mono2_anomeric   
:hasSideAtom    ?mono2_anomeric_side_atom .
Type the rest of statement, end with a semicolon (;)> 
?mono2_anomeric_side_atom:sideIndex      "1".
Type the rest of statement, end with a semicolon (;)> 
?mono2_anomeric_side_atom:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono2     
:hasRingAtom?mono2_ring_atom2.
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom2  
:ringIndex  "2".
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom2   
:hasSideAtom    ?mono2_side_atom2 .
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom2:sideIndex      "2".
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom2:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono2     
:hasRingAtom?mono2_ring_atom3.
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom3  
:ringIndex  "3".
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom3   
:hasSideAtom    ?mono2_side_atom3 .
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom3:sideIndex      "3".
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom3:orientation"Up".
Type the rest of statement, end with a semicolon (;)> ?mono2     
:hasRingAtom?mono2_ring_atom4.
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom4  
:ringIndex  "4".
Type the rest of statement, end with a semicolon (;)> ?mono2_ring_atom4   
:hasSideAtom    ?mono2_side_atom4 .
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom4:sideIndex      "4".
Type the rest of statement, end with a semicolon (;)> 
?mono2_side_atom4:orientation"Down".
Type the rest of statement, end with a semicolon (;)> ?mono2         
:hasRingAtom?mono2_last_c.
Type the rest of statement, end with a semicolon (;)> ?mono2_last_c       
:ringIndex  "5".
Type the rest of statement, end with a semicolon (;)> ?mono2_last_c         
:hasSideAtom    ?mono2_last_c_side_atom.
Type the rest of statement, end with a semicolon (;)> ?mono2_last_c_side_atom   
    :sideIndex      "+1".
Type the rest of statement, end with a semicolon (;)> ?mono2_last_c_side_atom   
   :orientation"Up".
Type the rest of statement, end with a semicolon (;)> {
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasParent 
?oligo0.
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasChild 
?oligo1.
Type the rest of statement, end with a semicolon (;)> } UNION {
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasParent 
?oligo1.
Type the rest of statement, end with a semicolon (;)> ?linkage0 :hasChild 
?oligo0.
Type the rest of statement, end with a semicolon (;)> }
Type the rest of statement, end with a semicolon (;)> {
Type the rest of statement, end with a semicolon (;)> ?linkage1 :hasParent 
?oligo1.
Type the rest of statement, end with a semicolon (;)> ?linkage1 :hasChild 
?oligo2.
Type the rest of statement, end with a semicolon (;)> } UNION {
Type the rest of statement, end with a semicolon (;)> ?linkage1 :hasParent 
?oligo2.
Type the rest of statement, end with a semicolon (;)> ?linkage1 :hasChild 
?oligo1.
Type the rest of statement, end with a semicolon (;)> }
Type the rest of statement, end with a semicolon (;)> ?pdb            :hasOligo 
      ?oligo0.
Type the rest of statement, end with a semicolon (;)> ?pdb            :hasOligo 
      ?oligo1.
Type the rest of statement, end with a semicolon (;)> ?pdb            :hasOligo 
      ?oligo2.
Type the rest of statement, end with a semicolon (;)> }
Type the rest of statement, end with a semicolon (;)> ;
pdb
LONG VARCHAR
_______________________________________________________________________________


0 Rows. -- 35524 msec.
SQL>

SQL> status('');
REPORT
VARCHAR
_______________________________________________________________________________

OpenLink Virtuoso  Server
Version 07.20.3216-pthreads for Darwin as of Mar  2 2016 
Started on: 2016-03-04 02:14 GMT+0

Best Regards
Hugh Williams
Professional Services
OpenLink Software, Inc.      //              http://www.openlinksw.com/
Weblog   -- http://www.openlinksw.com/blogs/
LinkedIn -- http://www.linkedin.com/company/openlink-software/
Twitter  -- http://twitter.com/OpenLink
Google+  -- http://plus.google.com/100570109519069333827/
Facebook -- http://www.facebook.com/OpenLinkSoftware
Universal Data Access, Integration, and Management Technology Providers



> On 4 Mar 2016, at 15:44, Delaram Ra <delaram...@gmail.com> wrote:
> 
> Hi all,
> 
> I ran into this problem recently, my program generates queries that sometimes 
> are too long. When I try to execute these queries on virtuoso (7.2.1) it 
> gives me the following error:
> Virtuoso 42000 Error SR483: Stack Overflow
> I have attached the sample RDF graph that I'm trying to query and the sample 
> queries as well. One of them tries to find 2 attached structures (works fine) 
> and the other tries to find 3 attached structures (this is when error 
> happens).
> I have checked the semantics of the queries and they seem fine to me.
> So I'm wondering if the error is related to length of the query? or it is 
> something else?
> 
> Any suggestion/help is appreciated.
> 
> Best,
> Delaram
> <query_2structures.txt><test.ttl><query_3structures.txt>------------------------------------------------------------------------------
> _______________________________________________
> Virtuoso-users mailing list
> Virtuoso-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/virtuoso-users

Attachment: smime.p7s
Description: S/MIME cryptographic signature

------------------------------------------------------------------------------
_______________________________________________
Virtuoso-users mailing list
Virtuoso-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/virtuoso-users

Reply via email to