<?xml version="1.0" encoding="UTF-8" ?>




<!--  RSS generated by JIRA 108 at Wed May 22 23:37:55 CEST 2013 -->
<rss version="0.92">





<channel>
    <title>openRDF.org Issue Tracker</title>
    <link>http://www.openrdf.org/issues</link>
    <description>This file is an XML representation of some issues</description>
    <language>en</language>

    
<item>

    







<title>[SES-572] A null index specification for an existing native store should mean to use the existing indices</title>
<link>http://www.openrdf.org/issues/browse/SES-572</link>

    
        <description>Currently, passing null or the empty string as the index specification string to the NativeStore constructor is interpreted as the default index string &amp;quot;spoc posc&amp;quot; (I guess). In case of an existing store, other indices may exist, and they are discarded. The existing indices are already stored in a properties file, but this value is never read. That value, if existing, should be taken as the default, instead of the mentioned &amp;quot;spoc posc&amp;quot;.</description>
    
    
        <environment></environment>
    
        <key id="10977">SES-572</key>
        <summary>A null index specification for an existing native store should mean to use the existing indices</summary>
        <type id="4">Improvement</type>
    
        <priority id="5">Trivial</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee>Unassigned</assignee>
        
    

    
        
        <reporter username="mie">Enrico Minack</reporter>
        
    

        
        <created>Tue, 24 Jun 2008 15:21:49 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:32:39 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Native Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="mie" created="Tue, 24 Jun 2008 15:23:37 +0200 (CEST)" level="">this patch uses the index string coming from the properties file as a default value if null is given via the constructor</comment>
            
            <comment author="james" created="Fri, 4 Jul 2008 21:02:42 +0200 (CEST)" level="">If no index is provided try and read the index from the properties file in revision 7425.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-652] Calling RDFFormat.getFileExtensions() returns MIME Types</title>
<link>http://www.openrdf.org/issues/browse/SES-652</link>

    
        <description>Calling RDFFormat.getFileExtensions() returns the same as RDFFormat.getMIMETypes. This is due to a copy+paste bug in &lt;a href=&quot;http://repo.aduna-software.org/svn/info.aduna/commons/lang/trunk/src/main/java/info/aduna/lang/FileFormat.java&quot;&gt;http://repo.aduna-software.org/svn/info.aduna/commons/lang/trunk/src/main/java/info/aduna/lang/FileFormat.java&lt;/a&gt;:&lt;br/&gt;
	/**&lt;br/&gt;
	 * Gets the file format&apos;s file extensions.&lt;br/&gt;
	 * &lt;br/&gt;
	 * @return An unmodifiable list of file extension strings, e.g. &amp;quot;text&amp;quot;.&lt;br/&gt;
	 */&lt;br/&gt;
	public List&amp;lt;String&amp;gt; getFileExtensions() {&lt;br/&gt;
		return Collections.unmodifiableList(mimeTypes);&lt;br/&gt;
	}&lt;br/&gt;
</description>
    
    
        <environment></environment>
    
        <key id="11121">SES-652</key>
        <summary>Calling RDFFormat.getFileExtensions() returns MIME Types</summary>
        <type id="1">Bug</type>
    
        <priority id="5">Trivial</priority>
    
        <status id="5">Resolved</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="mie">Enrico Minack</reporter>
        
    

        
        <created>Wed, 17 Dec 2008 13:34:39 +0100 (CET)</created>
    <updated>Wed, 17 Dec 2008 13:56:39 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
                    <version>2.2.2</version>
                
                    <version>2.2.3</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2.4</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Rio</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Wed, 17 Dec 2008 13:54:32 +0100 (CET)" level="">Bug also affect BooleanQueryResultFormat and TupleQueryResultFormat.&lt;br/&gt;
&lt;br/&gt;
Scheduling fix for 2.2.4.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-508] Handle security restrictions for applet sandboxes properly</title>
<link>http://www.openrdf.org/issues/browse/SES-508</link>

    
        <description>The RepositoryConnectionBase class (and possibly others) try to read the system property &amp;quot;org.openrdf.repository.debug&amp;quot; which causes a SecurityException when trying to initialize an HTTPRepository. This prevents the HTTP Repository API to be used within applets.&lt;br/&gt;
&lt;br/&gt;
The commons-logging API version 1.1 also had a similar problem, see &lt;a href=&quot;http://www.mail-archive.com/commons-user@jakarta.apache.org/msg15932.html&quot;&gt;http://www.mail-archive.com/commons-user@jakarta.apache.org/msg15932.html&lt;/a&gt; &lt;br/&gt;
&lt;br/&gt;
The solution is to catch and ignore security exceptions.</description>
    
    
        <environment></environment>
    
        <key id="10840">SES-508</key>
        <summary>Handle security restrictions for applet sandboxes properly</summary>
        <type id="4">Improvement</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="pmika">Peter Mika</reporter>
        
    

        
        <created>Mon, 31 Dec 2007 12:56:05 +0100 (CET)</created>
    <updated>Fri, 26 Sep 2008 11:34:49 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0-beta5</version>
                
                    <version>2.0-beta6</version>
                
                    <version>2.0-rc1</version>
                
                    <version>2.0-rc2</version>
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="james" created="Fri, 2 May 2008 16:48:03 +0200 (CEST)" level="">By signing the jars an security exception is not thrown.&lt;br/&gt;
&lt;a href=&quot;http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html&quot;&gt;http://java.sun.com/developer/onlineTraining/Programming/JDCBook/signed.html&lt;/a&gt;</comment>
            
            <comment author="james" created="Fri, 2 May 2008 16:48:44 +0200 (CEST)" level="">This is not a problem for signed jars.</comment>
            
            <comment author="arjohn" created="Wed, 21 May 2008 11:25:33 +0200 (CEST)" level="">Reopening issue in response to &lt;a href=&quot;http://www.openrdf.org/forum/mvnforum/viewthread?thread=1717&quot;&gt;http://www.openrdf.org/forum/mvnforum/viewthread?thread=1717&lt;/a&gt;&lt;br/&gt;
&lt;br/&gt;
Catching SecurityException sounds trivial in this case.</comment>
            
            <comment author="arjohn" created="Wed, 21 May 2008 11:28:49 +0200 (CEST)" level="">System properties are accessed in classes that are directly or indirectly used by most Sesame components, so this doesn&apos;t only affect the HTTPReposiory. Scheduling fix for 2.2.</comment>
            
            <comment author="arjohn" created="Wed, 21 May 2008 11:58:52 +0200 (CEST)" level="">SecurityException&apos;s for all non-standard properties are now catched when possible. System properties with no security risks, like line.seperator, are assumed to be OK.</comment>
            
            <comment author="lolive" created="Tue, 1 Jul 2008 15:43:18 +0200 (CEST)" level="">info.aduna.concurrent.locks.Properties.lockTracingEnabled does not catch SecurityException when accessing the property &amp;quot;info.aduna.concurrent.locks.trackLocks&amp;quot;. </comment>
            
            <comment author="james" created="Wed, 2 Jul 2008 19:24:40 +0200 (CEST)" level="">The call to System.getProperty(&amp;quot;org.openrdf.repository.debug&amp;quot;) throws an access denied.</comment>
            
            <comment author="arjohn" created="Fri, 4 Jul 2008 13:38:38 +0200 (CEST)" level="">Things appear to be working fine now. Marking this issue as resolved again.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-538] Exception when specified dir is actually a file</title>
<link>http://www.openrdf.org/issues/browse/SES-538</link>

    
        <description>I think this is a bug in Console.java...&lt;br/&gt;
&lt;br/&gt;
------------------&lt;br/&gt;
$ touch /tmp/is-a-file&lt;br/&gt;
$ mkdir /tmp/is-a-dir&lt;br/&gt;
$ start-console.sh &lt;br/&gt;
&lt;br/&gt;
&amp;gt; connect /tmp/is-a-dir.&lt;br/&gt;
Disconnecting from default data directory&lt;br/&gt;
Connected to /tmp/is-a-dir&lt;br/&gt;
&lt;br/&gt;
&amp;gt; connect /tmp/not-existing.&lt;br/&gt;
ERROR: Specified path is not an (existing) directory: /tmp/not-existing&lt;br/&gt;
&lt;br/&gt;
&amp;gt; connect /tmp/is-a-file.&lt;br/&gt;
ERROR: Failed to initialize data file /tmp/is-a-file/repositories/SYSTEM/memorystore.data&lt;br/&gt;
31-Mar-2008 02:53:49 org.openrdf.console.Console installNewManager&lt;br/&gt;
SEVERE: Failed to install new manager&lt;br/&gt;
org.openrdf.repository.RepositoryException: Failed to initialize data file /tmp/is-a-file/repositories/SYSTEM/memorystore.data&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.openrdf.repository.sail.SailRepository.initialize(SailRepository.java:85)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.openrdf.repository.base.RepositoryWrapper.initialize(RepositoryWrapper.java:60)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.openrdf.repository.event.base.NotifyingRepositoryWrapper.initialize(NotifyingRepositoryWrapper.java:130)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;at org.openrdf.repository.manager.SystemRepository.initialize(SystemRepository.java:70)&lt;br/&gt;
...etc&lt;br/&gt;
&lt;br/&gt;
----------------&lt;br/&gt;
502 : 	akam 	3695 	 private boolean connectLocal(String path) {&lt;br/&gt;
503 : 	akam 	3197 	File dir = new File(path);&lt;br/&gt;
504 : 	  	  	if (!dir.exists() &amp;amp;&amp;amp; !dir.isDirectory()) {&lt;br/&gt;
505 : 	  	  	writeError(&amp;quot;Specified path is not an (existing) directory: &amp;quot; + path);&lt;br/&gt;
506 : 	  	  	return false;&lt;br/&gt;
507 : 	  	  	}&lt;br/&gt;
508 : 	  	  	&lt;br/&gt;
509 : 	  	  	return installNewManager(new LocalRepositoryManager(dir), dir.toString());&lt;br/&gt;
510 : 	jeen 	2729 	}&lt;br/&gt;
&lt;br/&gt;
It looks like the &amp;amp;&amp;amp; above should be || ?&lt;br/&gt;
Thanks, Jon</description>
    
    
        <environment>linux</environment>
    
        <key id="10886">SES-538</key>
        <summary>Exception when specified dir is actually a file</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="user-jon">Jon</reporter>
        
    

        
        <created>Mon, 31 Mar 2008 03:56:11 +0200 (CEST)</created>
    <updated>Thu, 8 May 2008 11:27:56 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Console</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Mon, 31 Mar 2008 10:48:17 +0200 (CEST)" level="">The &amp;amp;&amp;amp; should indeed be a ||.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-541] Externally set bindings are erroneously included in query result</title>
<link>http://www.openrdf.org/issues/browse/SES-541</link>

    
        <description>Variable bindings that are set using the setBinding(...) methods on org.openrdf.query.Query objects are erroneously included in the query result. For example, with the following code...&lt;br/&gt;
&lt;br/&gt;
TupleQuery query = con.prepareTupleQuery(QueryLanguage.SERQL, &amp;quot;select Entity FROM {Entity} rdf:type {Class}&amp;quot;);&lt;br/&gt;
query.setBinding(&amp;quot;Class&amp;quot;, RDFS.CLASS);&lt;br/&gt;
TupleQueryResult queryResult = query.evaluate();&lt;br/&gt;
&lt;br/&gt;
...the &amp;quot;Class&amp;quot; binding is include in each BindingSet returned by the TupleQueryResult. One would expect that the returned BindingSet&apos;s would only include bindings for the &amp;quot;Entity&amp;quot; variable.</description>
    
    
        <environment></environment>
    
        <key id="10889">SES-541</key>
        <summary>Externally set bindings are erroneously included in query result</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="chris">Christiaan Fluit</reporter>
        
    

        
        <created>Tue, 8 Apr 2008 16:15:27 +0200 (CEST)</created>
    <updated>Thu, 8 May 2008 11:28:01 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Memory Sail</component>
                
                    <component>Native Sail</component>
                
                    <component>RDBMS Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-540] RemoteRepositoryManager doesn&apos;t extract repository URI info from repository info list</title>
<link>http://www.openrdf.org/issues/browse/SES-540</link>

    
        <description>RemoteRepositoryManager fails to extract repository URIs from repository overviews returned by a Sesame server. The manager treats the value as a Literal and tries to extract it&apos;s label, where the value is actually a URI. As a result of this, RepositoryInfo objects returned by this manager do not have their &apos;location&apos; set. The location is not used in Sesame internally, so Sesame itself is not affected.</description>
    
    
        <environment></environment>
    
        <key id="10888">SES-540</key>
        <summary>RemoteRepositoryManager doesn&apos;t extract repository URI info from repository info list</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Mon, 7 Apr 2008 10:38:55 +0200 (CEST)</created>
    <updated>Thu, 8 May 2008 11:28:06 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Repository API</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Mon, 7 Apr 2008 14:17:38 +0200 (CEST)" level="">Minor correction: the repository URIs are normally shown in the Workbench in the Sesame server overview. This column is currently empty.</comment>
            
            <comment author="arjohn" created="Mon, 7 Apr 2008 14:53:36 +0200 (CEST)" level="">Fixed by treating the &apos;uri&apos; value as a URI.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-548] Test RDFStoreTest.testGetContextIDs() doesnt commit or rollback at end</title>
<link>http://www.openrdf.org/issues/browse/SES-548</link>

    
        <description>The JUnit test:&lt;br/&gt;
RDFStoreTest.testGetContextIDs() &lt;br/&gt;
&lt;br/&gt;
ends with:&lt;br/&gt;
&amp;nbsp;&amp;nbsp;con.addStatement(picasso, paints, guernica, context2);&lt;br/&gt;
&amp;nbsp;&amp;nbsp;assertEquals(1, countElements(con.getContextIDs()));&lt;br/&gt;
&amp;nbsp;&amp;nbsp;assertEquals(context2, first(con.getContextIDs()));&lt;br/&gt;
}&lt;br/&gt;
&lt;br/&gt;
should be:&lt;br/&gt;
&amp;nbsp;&amp;nbsp;con.addStatement(picasso, paints, guernica, context2);&lt;br/&gt;
&amp;nbsp;&amp;nbsp;assertEquals(1, countElements(con.getContextIDs()));&lt;br/&gt;
&amp;nbsp;&amp;nbsp;assertEquals(context2, first(con.getContextIDs()));&lt;br/&gt;
&amp;nbsp;&amp;nbsp;con.commit();&lt;br/&gt;
}&lt;br/&gt;
</description>
    
    
        <environment>Linux</environment>
    
        <key id="10910">SES-548</key>
        <summary>Test RDFStoreTest.testGetContextIDs() doesnt commit or rollback at end</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="ajuffing">Andreas Juffinger</reporter>
        
    

        
        <created>Mon, 28 Apr 2008 16:43:43 +0200 (CEST)</created>
    <updated>Mon, 30 Jun 2008 17:36:52 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.1</fixVersion>
                
            
        
    

    
        
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-552] SPARQL parser fails with IllegalArgumentException when invalid URIs are encountered</title>
<link>http://www.openrdf.org/issues/browse/SES-552</link>

    
        <description>The SPARQL query parser doesn&apos;t handle invalid (relative) URIs properly. The following two queries both fail with an IllegalArgumentException, where this should have been a MalformedQueryException:&lt;br/&gt;
&lt;br/&gt;
SELECT *&lt;br/&gt;
WHERE {&lt;br/&gt;
&amp;nbsp;&amp;nbsp;?s &amp;lt;abc&amp;gt; ?o&lt;br/&gt;
}&lt;br/&gt;
&lt;br/&gt;
SELECT *&lt;br/&gt;
WHERE {&lt;br/&gt;
&amp;nbsp;&amp;nbsp;?s ?p &amp;quot;abc&amp;quot;^^&amp;lt;abc&amp;gt;&lt;br/&gt;
}</description>
    
    
        <environment></environment>
    
        <key id="10914">SES-552</key>
        <summary>SPARQL parser fails with IllegalArgumentException when invalid URIs are encountered</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="bblfish">Henry Story</reporter>
        
    

        
        <created>Wed, 7 May 2008 14:10:28 +0200 (CEST)</created>
    <updated>Mon, 30 Jun 2008 17:36:47 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>SPARQL</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-555] Sesame server reinitializes all repositories when a single repository configuration is changed</title>
<link>http://www.openrdf.org/issues/browse/SES-555</link>

    
        <description>LocalRepositoryManager, which is used by the Sesame server to manage its repositories, currently shuts down and reinitializes all repositories when the system confiuration is updated. This needs to be improved so that only the repositories whose configuration has actually changed are reinitialized.</description>
    
    
        <environment></environment>
    
        <key id="10917">SES-555</key>
        <summary>Sesame server reinitializes all repositories when a single repository configuration is changed</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="herko_ter_horst">Herko ter Horst</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Wed, 14 May 2008 09:17:35 +0200 (CEST)</created>
    <updated>Mon, 30 Jun 2008 17:36:58 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>HTTP Server</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-562] Sesame server fails to start when it is not allowed to read env vars</title>
<link>http://www.openrdf.org/issues/browse/SES-562</link>

    
        <description>On start-up, the Sesame server tries to determine what platform it is running on (unix, windows, etc.) to find the directory that is normally used for application data. The class info.aduna.platform.PlatformFactory also tries to determine which window manager is used in case a unix/linux OS is detected. It does this by reading a number of environment variables. However, when the webapp containiner (e.g. Tomcat) enforces some security restrictions that do no allow webapps to read these vars, a java.security.AccessControlException is thrown. These exceptions need to be handled properly.</description>
    
    
        <environment></environment>
    
        <key id="10942">SES-562</key>
        <summary>Sesame server fails to start when it is not allowed to read env vars</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Tue, 27 May 2008 10:35:55 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:31:28 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.3</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>HTTP Server</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Fri, 27 Jun 2008 13:17:38 +0200 (CEST)" level="">Platform detection now defaults to a more generic platform if specific properties or environment variables can not be read.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-575] NativeStore potentially uses wrong triple index for statement patterns with specified object</title>
<link>http://www.openrdf.org/issues/browse/SES-575</link>

    
        <description>Given an index other than spoc, the computation of the score for a pattern with object != NativeValue.UNKNOWN_ID and context == NativeValue.UNKNOWN_ID is computed incorrectly.&lt;br/&gt;
&lt;br/&gt;
In TripleStore$TripleIndex.getPatternScore(int s, int p, int o, int c), the case block for object (&apos;o&apos;) is missing a break. When the &apos;o&apos; field of the index specification string is reached, and if object is != NativeValue.UNKNOWN_ID, then the score is incremented and the context block is entered. If context is == NativeValue.UNKNOWN_ID, computation ends here, though a char other than &apos;c&apos; might be the next one in the array. This is not what you would expect.&lt;br/&gt;
&lt;br/&gt;
Simply add the break.</description>
    
    
        <environment></environment>
    
        <key id="10980">SES-575</key>
        <summary>NativeStore potentially uses wrong triple index for statement patterns with specified object</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="mie">Enrico Minack</reporter>
        
    

        
        <created>Mon, 30 Jun 2008 15:15:25 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:31:34 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.3</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Native Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 16:10:19 +0200 (CEST)" level="">Updated issue title.</comment>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 16:16:18 +0200 (CEST)" level="">The algorithm fails whenever an object is specified and all the previous fields are matched by the index. This can even affect the score for the &apos;spoc&apos; index.</comment>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 16:17:41 +0200 (CEST)" level="">Added the missing breaks, also added a default clause to catch invalid field characters.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-600] Duplicate constraints generated for DESCRIBE queries</title>
<link>http://www.openrdf.org/issues/browse/SES-600</link>

    
        <description>The SPARQL parser generates query models with duplicate value constraints when parsing DESCRIBE queries. This adds some (but probably minimal) unnecessary query evaluation overhead.</description>
    
    
        <environment></environment>
    
        <key id="11033">SES-600</key>
        <summary>Duplicate constraints generated for DESCRIBE queries</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Fri, 12 Sep 2008 11:11:51 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:34:54 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>SPARQL</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-639] Rollback on MemoryStore starts statement clean-up process when there&apos;s nothing to clean up</title>
<link>http://www.openrdf.org/issues/browse/SES-639</link>

    
        <description>MemoryStoreConnection.rollback() currently always triggers the clean-up process, even if there&apos;s nothing to be cleaned up. This causes an unnecessary iteration over all statements that holds an exclusive write lock, blocking any other requests.</description>
    
    
        <environment></environment>
    
        <key id="11099">SES-639</key>
        <summary>Rollback on MemoryStore starts statement clean-up process when there&apos;s nothing to clean up</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Tue, 18 Nov 2008 14:03:09 +0100 (CET)</created>
    <updated>Wed, 17 Dec 2008 14:04:45 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Memory Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Tue, 18 Nov 2008 16:32:13 +0100 (CET)" level="">clean-up process is no longer triggered if there&apos;s nothing to clean up.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-636] Connection registration in SailBase is not properly synchronized</title>
<link>http://www.openrdf.org/issues/browse/SES-636</link>

    
        <description>The org.openrdf.sail.helpers.SailBase, a common superclass of the memory, native and rdbms store, does not register its connections properly. Connection removal from the registration map is properly synchronized, but additions are not. In highly concurrent environments, this leads to warnings of the form: &amp;quot;tried to remove unknown connection object from store&amp;quot;.</description>
    
    
        <environment></environment>
    
        <key id="11096">SES-636</key>
        <summary>Connection registration in SailBase is not properly synchronized</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Wed, 12 Nov 2008 16:35:10 +0100 (CET)</created>
    <updated>Wed, 17 Dec 2008 14:04:55 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Sail API</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    



    <issuelinks>
    
        <issuelinktype id="10000">
            <name>Duplicate</name>
                
                
                    <outwardlinks description="duplicates">
                    
                        <issuelink>
                            <issuekey id="11094">SES-634</issuekey>
                        </issuelink>
                    
                    </outwardlinks>
                
                
                
                
                
        </issuelinktype>
    
    </issuelinks>


    
    
    

</item>
    
<item>

    







<title>[SES-539] XML Literal normalization</title>
<link>http://www.openrdf.org/issues/browse/SES-539</link>

    
        <description>XML literal normalization is not implemented yet.</description>
    
    
        <environment></environment>
    
        <key id="10887">SES-539</key>
        <summary>XML Literal normalization</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Thu, 3 Apr 2008 13:35:33 +0200 (CEST)</created>
    <updated>Mon, 31 Oct 2011 15:54:52 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0-alpha-1</version>
                
                    <version>2.0-alpha-2</version>
                
                    <version>2.0-alpha-3</version>
                
                    <version>2.0-alpha-4</version>
                
                    <version>2.0-beta1</version>
                
                    <version>2.0-beta2</version>
                
                    <version>2.0-beta3</version>
                
                    <version>2.0-beta4</version>
                
                    <version>2.0-beta5</version>
                
                    <version>2.0-beta6</version>
                
                    <version>2.0-rc1</version>
                
                    <version>2.0-rc2</version>
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Rio</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Fri, 4 Jul 2008 10:39:48 +0200 (CEST)" level="">- the RDF/XML parser now preserves whitespace characters in the root of XML literals if such characters are part of character content, as per &lt;a href=&quot;http://www.w3.org/TR/xml-c14n&quot;&gt;http://www.w3.org/TR/xml-c14n&lt;/a&gt;&lt;br/&gt;
- XML literal are now canonicalized before being compared in the compliance test suite, as per &lt;a href=&quot;http://www.w3.org/2000/03/rdf-tracking/#rdfms-xml-literal-namespaces&quot;&gt;http://www.w3.org/2000/03/rdf-tracking/#rdfms-xml-literal-namespaces&lt;/a&gt;</comment>
            
        </comments>
    
    

    



    <issuelinks>
    
        <issuelinktype id="10020">
            <name>Related</name>
                
                
                
                
                
                    <inwardlinks description="is related to">
                    
                        <issuelink>
                            <issuekey id="12710">SES-858</issuekey>
                        </issuelink>
                    
                    </inwardlinks>
                
                
        </issuelinktype>
    
    </issuelinks>


    
    
    

</item>
    
<item>

    







<title>[SES-679] RDF/XML parser fails on relative URIs in rdf:datatype</title>
<link>http://www.openrdf.org/issues/browse/SES-679</link>

    
        <description>Trying to parse the following document:&lt;br/&gt;
&lt;br/&gt;
&amp;lt;rdf:RDF xmlns:rdf=&amp;quot;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&lt;/a&gt;&amp;quot; xmlns=&amp;quot;&lt;a href=&quot;http://example.com/#&quot;&gt;http://example.com/#&lt;/a&gt;&amp;quot;&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;Foo&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;bar rdf:datatype=&amp;quot;hello&amp;quot;&amp;gt;Zyzzyx&amp;lt;/bar&amp;gt; &lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;/Foo&amp;gt;&lt;br/&gt;
&amp;lt;/rdf:RDF&amp;gt;&lt;br/&gt;
&lt;br/&gt;
I get:&lt;br/&gt;
&lt;br/&gt;
org.openrdf.rio.RDFParseException: Not a valid (absolute) URI: hello [line 3, column 37]&lt;br/&gt;
&lt;br/&gt;
The problem is the value &amp;quot;hello&amp;quot; for rdf:datatype, Rio expects an absolute URI. Section 2.14 of the RDF/XML spec says however that rdf:datatype can contain relative URIs which are to be resolved in the usual way.</description>
    
    
        <environment>Sesame 2.2.4</environment>
    
        <key id="11360">SES-679</key>
        <summary>RDF/XML parser fails on relative URIs in rdf:datatype</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="5">Resolved</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="cygri">Richard Cyganiak</reporter>
        
    

        
        <created>Wed, 26 Aug 2009 20:37:27 +0200 (CEST)</created>
    <updated>Tue, 13 Mar 2012 15:21:48 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
                    <version>2.2.2</version>
                
                    <version>2.2.3</version>
                
                    <version>2.2.4</version>
                
                    <version>2.3-pr1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.3.0</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Rio</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Thu, 27 Aug 2009 13:59:41 +0200 (CEST)" level="">Nice catch, Richard!</comment>
            
        </comments>
    
    

    



    <issuelinks>
    
        <issuelinktype id="10020">
            <name>Related</name>
                
                
                
                
                
                    <inwardlinks description="is related to">
                    
                        <issuelink>
                            <issuekey id="13282">SES-960</issuekey>
                        </issuelink>
                    
                    </inwardlinks>
                
                
        </issuelinktype>
    
    </issuelinks>


    
    
    

</item>
    
<item>

    







<title>[SES-991] clear command does not clear namespaces</title>
<link>http://www.openrdf.org/issues/browse/SES-991</link>

    
        <description></description>
    
    
        <environment></environment>
    
        <key id="13470">SES-991</key>
        <summary>clear command does not clear namespaces</summary>
        <type id="1">Bug</type>
    
        <priority id="4">Minor</priority>
    
        <status id="5">Resolved</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="jeen">Jeen Broekstra</assignee>
        
    

    
        
        <reporter username="jeen">Jeen Broekstra</reporter>
        
    

        
        <created>Wed, 9 May 2012 05:58:46 +0200 (CEST)</created>
    <updated>Wed, 9 May 2012 06:03:46 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
                    <version>2.2.2</version>
                
                    <version>2.2.3</version>
                
                    <version>2.2.4</version>
                
                    <version>2.3-pr1</version>
                
                    <version>2.3.0</version>
                
                    <version>2.3.1</version>
                
                    <version>2.3.2</version>
                
                    <version>2.4.0-alpha1</version>
                
                    <version>2.3.3</version>
                
                    <version>2.4.0</version>
                
                    <version>2.4.1</version>
                
                    <version>2.4.2</version>
                
                    <version>2.5.0</version>
                
                    <version>2.5.1</version>
                
                    <version>2.6.0</version>
                
                    <version>2.6.1</version>
                
                    <version>2.6.2</version>
                
                    <version>2.6.3</version>
                
                    <version>2.6.4</version>
                
                    <version>2.6.5</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.6.6</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Console</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-537] Sesame server doesn&apos;t properly shut down repositories</title>
<link>http://www.openrdf.org/issues/browse/SES-537</link>

    
        <description>Issue reported here: &lt;a href=&quot;http://www.openrdf.org/forum/mvnforum/viewthread?thread=1636&quot;&gt;http://www.openrdf.org/forum/mvnforum/viewthread?thread=1636&lt;/a&gt;&lt;br/&gt;
&lt;br/&gt;
Hi,&lt;br/&gt;
are the shutdown()&apos;s methods of the repositories are really invoked when the openrdf-sesame web-app is being closed within Tomcat? (Sesame2.0 official release - Tomcat/5.0.28)&lt;br/&gt;
&lt;br/&gt;
I&apos;ve debuged this and shutdown() methods of neither - our owlim or sesame&apos;s memory store are invoked when the web-app is closed.&lt;br/&gt;
&lt;br/&gt;
Is it a bug or there is some prerequisite/requrement/interface/etc. that the sail should implement in order to be shutdown properly?</description>
    
    
        <environment></environment>
    
        <key id="10885">SES-537</key>
        <summary>Sesame server doesn&apos;t properly shut down repositories</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="damyan">Damyan Ognyanoff</reporter>
        
    

        
        <created>Fri, 21 Mar 2008 16:57:39 +0100 (CET)</created>
    <updated>Thu, 8 May 2008 11:27:52 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>HTTP Server</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Fri, 21 Mar 2008 17:07:25 +0100 (CET)" level="">Issue was fixed by specifying a destroy-method for the repository manager in the spring configuration file.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-542] Upload after clear results in duplicate namespace declarations</title>
<link>http://www.openrdf.org/issues/browse/SES-542</link>

    
        <description>I am using a native store with two indexes and adding data to two different contexts. Whenever I clear the repository (via http using a command console) and then re-upload the data, I suddenly get duplicate entries in the set of  namespace declarations (when I request a list of namespace, I get, for example, the dc: namespace twice, both with identical prefix and namespace name). </description>
    
    
        <environment></environment>
    
        <key id="10890">SES-542</key>
        <summary>Upload after clear results in duplicate namespace declarations</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="jeen">Jeen Broekstra</reporter>
        
    

        
        <created>Wed, 16 Apr 2008 11:54:02 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:35:15 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Native Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Fri, 23 May 2008 11:15:08 +0200 (CEST)" level="">Neither me, nor the reported can reproduce the problem.</comment>
            
            <comment author="arjohn" created="Tue, 26 Aug 2008 15:50:04 +0200 (CEST)" level="">The NativeStore did not correctly restore stored namespaces when reading the data from file.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-546] Workbench Should Be Able to read Local Repositories</title>
<link>http://www.openrdf.org/issues/browse/SES-546</link>

    
        <description>The workbench can be a great way to visualize the repository, but since the workbench currently cannot open local repositories (or create repositories) it has limited use and cannot be recommended as a general purpose tool.</description>
    
    
        <environment></environment>
    
        <key id="10900">SES-546</key>
        <summary>Workbench Should Be Able to read Local Repositories</summary>
        <type id="4">Improvement</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee>Unassigned</assignee>
        
    

    
        
        <reporter username="james">James Leigh</reporter>
        
    

        
        <created>Tue, 22 Apr 2008 03:46:57 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:35:09 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Web interface</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="james" created="Thu, 25 Sep 2008 16:52:09 +0200 (CEST)" level="">The workbench accepts server URLs of the form &lt;a href=&quot;file:///&quot;&gt;file:///&lt;/a&gt;</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-551] OutOfMemory Exception When Objects Are Queued For Finalization</title>
<link>http://www.openrdf.org/issues/browse/SES-551</link>

    
        <description>We have one non-inferencing model which has 200,000 triples and we also have 200 inferencing models and number of statements every inferencing model stores is about 1000 (excluding the statements that inferencing itself creates). All models are stored in memory.&lt;br/&gt;
&lt;br/&gt;
In our code, we open a connection, get statements from the model and close the connection and we do this for at least one million time in a very short time. Our problem is that we&apos;re getting an OutOfMemory Exception even though we have a pretty good server (details below). We used a memory profiler to figure out what is going on and we noticed that there are so many objects sitting in the memory to be finalized and they don&apos;t go away until full gc performs. After full gc, we continue and keep getting statements from our model and number of objects in the memory goes up again. You&apos;ll see the list of objects below;&lt;br/&gt;
&lt;br/&gt;
CclassName ---------------------------------------------------------------------- numObjectsPendingFinalization&lt;br/&gt;
java.lang.ref.Finalizer&lt;br/&gt;
info.aduna.concurrent.locks.WritePrefReadWriteLockManager$1 ---- 2,819,785&lt;br/&gt;
org.openrdf.sail.helpers.SailBaseIteration ------------------------------------- 1,871,071&lt;br/&gt;
info.aduna.concurrent.locks.ReadPrefReadWriteLockManager$1 ----- 1,894,609&lt;br/&gt;
info.aduna.concurrent.locks.ExclusiveLockManager$1 ----------------------- 943,632&lt;br/&gt;
org.openrdf.repository.sail.SailRepositoryConnection ------------------------ 569,166&lt;br/&gt;
info.aduna.concurrent.locks.WritePrefReadWriteLockManager$2 ------- 555,563&lt;br/&gt;
org.apache.commons.dbcp.cpdsadapter.ConnectionImpl ------------------- 15,384&lt;br/&gt;
[number of objects goes down significantly at this point]&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
Server Details:&lt;br/&gt;
64Bit Server&lt;br/&gt;
java version &amp;quot;1.5.0_15&amp;quot; 64-Bit Server VM&lt;br/&gt;
Number of CPUs: 4 Dual Core 2Ghz&lt;br/&gt;
Total Memory Size: 4Gb&lt;br/&gt;
Size of Memory used by JVM: 3Gb&lt;br/&gt;
&lt;br/&gt;
This may not be the real cause but when I was looking for the reason for OutOfMemory Excpetion, I found this article. The following paragraph is from &lt;a href=&quot;http://java.sun.com/javase/6/webnotes/trouble/TSG-VM/html/gbywc.html#gbyvh&quot;&gt;http://java.sun.com/javase/6/webnotes/trouble/TSG-VM/html/gbywc.html#gbyvh&lt;/a&gt;:&lt;br/&gt;
&lt;br/&gt;
One other potential source of OutOfMemoryError arises with applications that make excessive use of finalizers. If a class has a finalize method, then objects of that type do not have their space reclaimed at garbage collection time. Instead, after garbage collection the objects are queued for finalization, which occurs at a later time. In the Sun implementation, finalizers are executed by a daemon thread that services the finalization queue. If the finalizer thread cannot keep up with the finalization queue, then the Java heap could fill up and OutOfMemoryError would be thrown. One scenario that can cause this situation is when an application creates high-priority threads that cause the finalization queue to increase at a rate that is faster than the rate at which the finalizer thread is servicing that queue.</description>
    
    
        <environment>64Bit Server&lt;br/&gt;
java version &amp;quot;1.5.0_15&amp;quot; 64-Bit Server VM&lt;br/&gt;
Number of CPUs: 4 Dual Core 2Ghz&lt;br/&gt;
Total Memory Size: 4Gb&lt;br/&gt;
Size of Memory used by JVM: 3Gb</environment>
    
        <key id="10913">SES-551</key>
        <summary>OutOfMemory Exception When Objects Are Queued For Finalization</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="dejavu">Yasin Cengiz</reporter>
        
    

        
        <created>Thu, 1 May 2008 00:44:43 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:35:46 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Memory Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="james" created="Fri, 2 May 2008 16:57:59 +0200 (CEST)" level="">Some of these classes do not need a finalizers. For example the SailBaseIteration - only the outer most iteration needs a finalizer. The finalizer on the AbstractLock could be moved to the managers that are already tracking them.</comment>
            
            <comment author="arjohn" created="Tue, 13 May 2008 16:01:59 +0200 (CEST)" level="">I&apos;m planning to fix this issue by caching and reusing released locks. This should seriously reduce the number of objects that need to be garbage collected. Unfortunately, this fix has a reasonable chance to break existing code and needs to be tested thoroughly. Postponing this fix to the next release.</comment>
            
            <comment author="arjohn" created="Fri, 4 Jul 2008 11:03:22 +0200 (CEST)" level="">New plan: use two types of locks, one with and and without finalizers. The type with finalizer will be used if debugging is enabled.</comment>
            
            <comment author="arjohn" created="Fri, 4 Jul 2008 11:04:52 +0200 (CEST)" level="">Requires considerable changes to various core pieces of code, rescheduling to 2.2.</comment>
            
            <comment author="arjohn" created="Wed, 27 Aug 2008 15:44:56 +0200 (CEST)" level="">The issue has been partly solved: the lock managers now create locks without finalizers unless a debug property is set. The other (Iteration) finalizers are hard to remove in 2.2, this will be much easier after some refactoring that is scheduled for 2.5.&lt;br/&gt;
&lt;br/&gt;
I have been able to reproduce the OOM errors using the server JVM (&amp;quot;-server&amp;quot; parameter). The client JVM didn&apos;t have any problems, likely thanks to other garbage collection strategies. I was able to use the server JVM successfully by enforcing the incremental garbage collector (&amp;quot;-Xincgc&amp;quot; parameter), not sure what the performance trade off is though.</comment>
            
            <comment author="arjohn" created="Thu, 28 Aug 2008 11:25:29 +0200 (CEST)" level="">Lowered priority since it seems the problem can be solved by choosing a different GC strategy.</comment>
            
            <comment author="arjohn" created="Thu, 28 Aug 2008 11:58:10 +0200 (CEST)" level="">Marking this issue as resolved since the usage of finalizers has been considerably reduced and there&apos;s a &amp;quot;fix&amp;quot; in the form of an alternative GC strategy. A new issue has been created to further reduce the use of finalizers in future releases: &lt;a href=&quot;http://www.openrdf.org/issues/browse/SES-594&quot; title=&quot;Reduce the usage of finalizers&quot;&gt;&lt;strike&gt;SES-594&lt;/strike&gt;&lt;/a&gt;.</comment>
            
        </comments>
    
    

    



    <issuelinks>
    
        <issuelinktype id="10020">
            <name>Related</name>
                
                
                
                
                
                    <inwardlinks description="is related to">
                    
                        <issuelink>
                            <issuekey id="11017">SES-594</issuekey>
                        </issuelink>
                    
                    </inwardlinks>
                
                
        </issuelinktype>
    
    </issuelinks>


    
    
    

</item>
    
<item>

    







<title>[SES-561] MemoryStore fails with java.io.UTFDataFormatException when trying to persist really long literals</title>
<link>http://www.openrdf.org/issues/browse/SES-561</link>

    
        <description>When loading RDF statements (in my case from an TriG file) into a MemorySail using a filebackend, it throws the following exception when flushing a large literal to the file:&lt;br/&gt;
java.io.UTFDataFormatException: encoded string too long: 73108 bytes&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;java.io.DataOutputStream.writeUTF(DataOutputStream.java:347)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;java.io.DataOutputStream.writeUTF(DataOutputStream.java:306)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.FileIO.writeValue(FileIO.java:258)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.FileIO.writeStatements(FileIO.java:200)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.FileIO.write(FileIO.java:87)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.MemoryStore.sync(MemoryStore.java:823)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.MemoryStore.scheduleSyncTask(MemoryStore.java:755)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.MemoryStore.commit(MemoryStore.java:709)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.memory.MemoryStoreConnection.commitInternal(MemoryStoreConnection.java:305)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.sail.helpers.SailConnectionBase.commit(SailConnectionBase.java:250)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.sail.SailRepositoryConnection.commit(SailRepositoryConnection.java:79)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.setAutoCommit(RepositoryConnectionBase.java:194)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.addInputStreamOrReader(RepositoryConnectionBase.java:328)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.add(RepositoryConnectionBase.java:253)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.rdfstores.sesame2.Sesame2.load(Sesame2.java:180)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:225)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:199)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:161)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.main(RDFStoreEvaluation.java:92)&lt;br/&gt;
this exception occurs using openrdf-sesame-2.0.1-onejar.jar. When updating to 2.1.2, the following exception is thrown by the same code in the same environment:&lt;br/&gt;
org.openrdf.repository.RepositoryException: org.openrdf.sail.SailException: java.io.UTFDataFormatException: encoded string too long: 73108 bytes&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.sail.SailRepositoryConnection.commit(SailRepositoryConnection.java:82)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.setAutoCommit(RepositoryConnectionBase.java:194)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.addInputStreamOrReader(RepositoryConnectionBase.java:328)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.openrdf.repository.base.RepositoryConnectionBase.add(RepositoryConnectionBase.java:253)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.rdfstores.sesame2.Sesame2.load(Sesame2.java:180)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:225)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:199)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.evaluate(RDFStoreEvaluation.java:161)&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;de.l3s.evaluation.RDFStoreEvaluation.main(RDFStoreEvaluation.java:92)&lt;br/&gt;
</description>
    
    
        <environment>Ubuntu 7.10 (32bit) and OpenSUSE 10.2 (64bit) with Java 1.6 and 1.5, respectively</environment>
    
        <key id="10941">SES-561</key>
        <summary>MemoryStore fails with java.io.UTFDataFormatException when trying to persist really long literals</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="mie">Enrico Minack</reporter>
        
    

        
        <created>Tue, 27 May 2008 09:15:45 +0200 (CEST)</created>
    <updated>Fri, 26 Sep 2008 11:36:06 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Memory Sail</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Tue, 27 May 2008 09:43:04 +0200 (CEST)" level="">Improved summary, scheduled for 2.2.</comment>
            
            <comment author="arjohn" created="Tue, 27 May 2008 09:46:28 +0200 (CEST)" level="">This error is caused by the fact that the MemoryStore uses DataOutputStream.writeUTF(...) to write strings to the data file. DataOutputStream uses two bytes for the length of the (utf8 encoded) byte array and throws a UTFDataFormatException when this byte array is longer than 64k.</comment>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 11:46:35 +0200 (CEST)" level="">Required fix is too big for a bug fix release, will fix in 2.2.</comment>
            
            <comment author="arjohn" created="Tue, 26 Aug 2008 14:49:50 +0200 (CEST)" level="">Limit for literals has been increased to 2^31, which is also the limit for (char) arrays in Java.</comment>
            
        </comments>
    
    

    



    <issuelinks>
    
        <issuelinktype id="10000">
            <name>Duplicate</name>
                
                
                
                
                
                    <inwardlinks description="is duplicated by">
                    
                        <issuelink>
                            <issuekey id="10952">SES-564</issuekey>
                        </issuelink>
                    
                    </inwardlinks>
                
                
        </issuelinktype>
    
    </issuelinks>


    
    
    

</item>
    
<item>

    







<title>[SES-563] Different order of patterns in query lead to different result sets</title>
<link>http://www.openrdf.org/issues/browse/SES-563</link>

    
        <description>When the order of the patterns of a query is changed, the result set changes as well. In the following case, it happens when a mandatory pattern is stated after an optional pattern. This should not happen, since the order of the patterns does not have any impact on the meaning of a graph pattern. Specifically, the following two SPARQL queries lead to different result sets. From the first to the second query, the first pattern is moved to the third position (behind the first optional pattern).&lt;br/&gt;
&lt;br/&gt;
They should run on any RDF data, but they were only tested on the RDF data below:&lt;br/&gt;
&lt;br/&gt;
SPARQL query 1:&lt;br/&gt;
&lt;br/&gt;
SELECT DISTINCT&lt;br/&gt;
&amp;nbsp;?p ?d ?r ?l ?c&lt;br/&gt;
WHERE {&lt;br/&gt;
&amp;nbsp;?s1 ?p ?s2 .&lt;br/&gt;
&amp;nbsp;?s1 rdf:type ?d .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?s2 rdf:type ?r } .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?p rdfs:label ?l . FILTER isLiteral(?l) } .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?p rdfs:comment ?c . FILTER isLiteral(?c) }&lt;br/&gt;
}&lt;br/&gt;
&lt;br/&gt;
SPARQL query 2:&lt;br/&gt;
&lt;br/&gt;
PREFIX rdfs:    &amp;lt;&lt;a href=&quot;http://www.w3.org/2000/01/rdf-schema#&quot;&gt;http://www.w3.org/2000/01/rdf-schema#&lt;/a&gt;&amp;gt; &lt;br/&gt;
PREFIX rdf:     &amp;lt;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&lt;/a&gt;&amp;gt; &lt;br/&gt;
&lt;br/&gt;
SELECT DISTINCT&lt;br/&gt;
&amp;nbsp;?p ?d ?r ?l ?c&lt;br/&gt;
WHERE {&lt;br/&gt;
&amp;nbsp;?s1 rdf:type ?d .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?s2 rdf:type ?r } .&lt;br/&gt;
&amp;nbsp;?s1 ?p ?s2 .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?p rdfs:label ?l . FILTER isLiteral(?l) } .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?p rdfs:comment ?c . FILTER isLiteral(?c) }&lt;br/&gt;
}&lt;br/&gt;
&lt;br/&gt;
This was tested on this RDF graph:&lt;br/&gt;
&amp;lt;uri:one&amp;gt; &amp;lt;uri:property1&amp;gt; &amp;lt;uri:two&amp;gt; .&lt;br/&gt;
&amp;lt;uri:one&amp;gt; &amp;lt;uri:property1&amp;gt; &amp;lt;uri:three&amp;gt; .&lt;br/&gt;
&amp;lt;uri:one&amp;gt; &amp;lt;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&lt;/a&gt;&amp;gt; &amp;lt;uri:class1&amp;gt; .&lt;br/&gt;
&amp;lt;uri:one&amp;gt; &amp;lt;uri:property2&amp;gt; &amp;quot;literal one&amp;quot;^^&amp;lt;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#String&quot;&gt;http://www.w3.org/2001/XMLSchema#String&lt;/a&gt;&amp;gt; .&lt;br/&gt;
&amp;lt;uri:two&amp;gt; &amp;lt;uri:property3&amp;gt; &amp;quot;literal two&amp;quot; .&lt;br/&gt;
&amp;lt;uri:two&amp;gt; &amp;lt;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&lt;/a&gt;&amp;gt; &amp;lt;uri:class2&amp;gt; .&lt;br/&gt;
&amp;lt;uri:three&amp;gt; &amp;lt;uri:property3&amp;gt; &amp;quot;literal three&amp;quot; .&lt;br/&gt;
&amp;lt;uri:three&amp;gt; &amp;lt;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&lt;/a&gt;&amp;gt; &amp;lt;uri:class2&amp;gt; .&lt;br/&gt;
&lt;br/&gt;
&lt;br/&gt;
The result set of the first query is:&lt;br/&gt;
d	c	r	p	l	&lt;br/&gt;
d=uri:class1	null	r=uri:class2	p=uri:property1	null	&lt;br/&gt;
d=uri:class1	null	null	p=&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&lt;/a&gt;	null	&lt;br/&gt;
d=uri:class1	null	null	p=uri:property2	null	&lt;br/&gt;
d=uri:class2	null	null	p=&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&lt;/a&gt;	null	&lt;br/&gt;
d=uri:class2	null	null	p=uri:property3	null&lt;br/&gt;
&lt;br/&gt;
The result set of the second query is:&lt;br/&gt;
d	c	r	p	l	&lt;br/&gt;
d=uri:class1	null	r=uri:class2	p=uri:property1	null	&lt;br/&gt;
</description>
    
    
        <environment>Ubuntu 7.10 (64bit) with Java 1.6.0_03</environment>
    
        <key id="10943">SES-563</key>
        <summary>Different order of patterns in query lead to different result sets</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="2">Won&apos;t Fix</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="mie">Enrico Minack</reporter>
        
    

        
        <created>Thu, 29 May 2008 12:45:22 +0200 (CEST)</created>
    <updated>Mon, 30 Jun 2008 17:39:12 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0.1</version>
                
                    <version>2.1.2</version>
                
            
        
    

    
        
        
    

    
        
        
            
            
                
                    <component>Native Sail</component>
                
                    <component>SPARQL</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Thu, 29 May 2008 13:42:46 +0200 (CEST)" level="">I don&apos;t think these two queries are equivalent since the optional graph pattern breaks the basic graph pattern in two. In the second query, the first optional operator only operates on the results of the first basic graph pattern. The result of this optional is joined with the rest of the graph pattern group, including the second &amp;quot;?s1 ?p ?s2&amp;quot; basic graph pattern. This bug report looks invalid to me.&lt;br/&gt;
&lt;br/&gt;
From &lt;a href=&quot;http://www.w3.org/TR/rdf-sparql-query/#BasicGraphPatterns&quot;&gt;http://www.w3.org/TR/rdf-sparql-query/#BasicGraphPatterns&lt;/a&gt; :&lt;br/&gt;
&amp;quot;Any graph pattern terminates a basic graph pattern.&amp;quot;</comment>
            
            <comment author="mie" created="Thu, 29 May 2008 14:01:29 +0200 (CEST)" level="">Oh I see. The page also says:&lt;br/&gt;
&lt;br/&gt;
The OPTIONAL keyword is left-associative :&lt;br/&gt;
&amp;nbsp;&amp;nbsp;pattern OPTIONAL { pattern } OPTIONAL { pattern }&lt;br/&gt;
is the same as:&lt;br/&gt;
&amp;nbsp;&amp;nbsp;{ pattern OPTIONAL { pattern } } OPTIONAL { pattern }&lt;br/&gt;
&lt;br/&gt;
But I am still not sure whether&lt;br/&gt;
&amp;nbsp;?s1 rdf:type ?d .&lt;br/&gt;
&amp;nbsp;OPTIONAL { ?s2 rdf:type ?r } .&lt;br/&gt;
&amp;nbsp;?s1 ?p ?s2 . &lt;br/&gt;
should have a different result set than&lt;br/&gt;
&amp;nbsp;?s1 rdf:type ?d .&lt;br/&gt;
&amp;nbsp;?s1 ?p ?s2 . &lt;br/&gt;
&amp;nbsp;OPTIONAL { ?s2 rdf:type ?r } .&lt;br/&gt;
&lt;br/&gt;
Isn&apos;t&lt;br/&gt;
&amp;nbsp;{ pattern1 pattern2 } OPTIONAL { pattern3}&lt;br/&gt;
logically the same as&lt;br/&gt;
&amp;nbsp;{ pattern1 } OPTIONAL { pattern3 } pattern2&lt;br/&gt;
?</comment>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 16:32:53 +0200 (CEST)" level="">{ pattern1 pattern2 } OPTIONAL { pattern3} &lt;br/&gt;
is different from&lt;br/&gt;
{ pattern1 } OPTIONAL { pattern3 } pattern2 &lt;br/&gt;
&lt;br/&gt;
In the first, pattern2 can bind variables that can cause the optional join to fail. In the second, the optional join only considers the variables from pattern1 and can thus produce more results. Any variables bound by pattern3 that are not bound by pattern1 can cause the join with pattern2 to fail.</comment>
            
            <comment author="arjohn" created="Mon, 30 Jun 2008 16:35:14 +0200 (CEST)" level="">The described behaviour is expected and is not a bug.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-623] Query algebra objects do not clone their internal collections correctly</title>
<link>http://www.openrdf.org/issues/browse/SES-623</link>

    
        <description>Lists and sets that are used by query model objects are not cloned correctly by their clone() method. The cloned objects refer to the list/set objects of the cloned object.</description>
    
    
        <environment></environment>
    
        <key id="11068">SES-623</key>
        <summary>Query algebra objects do not clone their internal collections correctly</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="arjohn">Arjohn Kampman</assignee>
        
    

    
        
        <reporter username="arjohn">Arjohn Kampman</reporter>
        
    

        
        <created>Fri, 3 Oct 2008 15:26:45 +0200 (CEST)</created>
    <updated>Wed, 22 Oct 2008 20:45:22 +0200 (CEST)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.1.4</fixVersion>
                
                    <fixVersion>2.2.1</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Query Model</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
    

    




    
    
    

</item>
    
<item>

    







<title>[SES-630] Incorrect query result ordering when optional statement pattern variables are involved</title>
<link>http://www.openrdf.org/issues/browse/SES-630</link>

    
        <description>We observed some strange behavior on a sparql query involving &apos;order by&apos; over a variable which is used in a OPTIONAL statement pattern - in such case the result is not ordered.&lt;br/&gt;
&lt;br/&gt;
The query is:&lt;br/&gt;
&lt;br/&gt;
PREFIX rdf:  &amp;lt;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&lt;/a&gt;&amp;gt;&lt;br/&gt;
PREFIX rdfs: &amp;lt;&lt;a href=&quot;http://www.w3.org/2000/01/rdf-schema#&quot;&gt;http://www.w3.org/2000/01/rdf-schema#&lt;/a&gt;&amp;gt;&lt;br/&gt;
SELECT ?a ?label&lt;br/&gt;
WHERE {&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;?a rdf:type &amp;lt;&lt;a href=&quot;http://www.w3.org/2002/07/owl#Thing&quot;&gt;http://www.w3.org/2002/07/owl#Thing&lt;/a&gt;&amp;gt; .&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;OPTIONAL {?a rdfs:label ?label }&lt;br/&gt;
}&lt;br/&gt;
ORDER BY ?label&lt;br/&gt;
&lt;br/&gt;
the sample data :&lt;br/&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt;&lt;br/&gt;
&amp;lt;rdf:RDF&lt;br/&gt;
&amp;nbsp;&amp;nbsp;xmlns=&amp;quot;&lt;a href=&quot;http://TestSort#&quot;&gt;http://TestSort#&lt;/a&gt;&amp;quot;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;xmlns:rdf=&amp;quot;&lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&lt;/a&gt;&amp;quot;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;xmlns:xsd=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#&quot;&gt;http://www.w3.org/2001/XMLSchema#&lt;/a&gt;&amp;quot;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;xmlns:rdfs=&amp;quot;&lt;a href=&quot;http://www.w3.org/2000/01/rdf-schema#&quot;&gt;http://www.w3.org/2000/01/rdf-schema#&lt;/a&gt;&amp;quot;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;xmlns:owl=&amp;quot;&lt;a href=&quot;http://www.w3.org/2002/07/owl#&quot;&gt;http://www.w3.org/2002/07/owl#&lt;/a&gt;&amp;quot;&lt;br/&gt;
xml:base=&amp;quot;&lt;a href=&quot;http://TestSort&quot;&gt;http://TestSort&lt;/a&gt;&amp;quot;&amp;gt;&lt;br/&gt;
&amp;lt;owl:Ontology rdf:about=&amp;quot;&amp;quot;&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;owl:versionInfo rdf:datatype=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&amp;quot;&amp;gt;Created with TopBraid Composer&amp;lt;/owl:versionInfo&amp;gt;&lt;br/&gt;
&amp;lt;/owl:Ontology&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_1&amp;quot;/&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_3&amp;quot;/&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_5&amp;quot;/&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_0&amp;quot;&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;rdfs:label rdf:datatype=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&amp;quot;&amp;gt;Thing_6&amp;lt;/rdfs:label&amp;gt;&lt;br/&gt;
&amp;lt;/owl:Thing&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_7&amp;quot;/&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_2&amp;quot;&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;rdfs:label rdf:datatype=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&amp;quot;&amp;gt;Thing_2&amp;lt;/rdfs:label&amp;gt;&lt;br/&gt;
&amp;lt;/owl:Thing&amp;gt;&lt;br/&gt;
&amp;lt;owl:Thing rdf:ID=&amp;quot;Thing_4&amp;quot;&amp;gt;&lt;br/&gt;
&amp;nbsp;&amp;nbsp;&amp;lt;rdfs:label rdf:datatype=&amp;quot;&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&amp;quot;&amp;gt;Thing_4&amp;lt;/rdfs:label&amp;gt;&lt;br/&gt;
&amp;lt;/owl:Thing&amp;gt;&lt;br/&gt;
&amp;lt;/rdf:RDF&amp;gt;&lt;br/&gt;
&lt;br/&gt;
and the output:&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_1&quot;&gt;http://TestSort#Thing_1&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_3&quot;&gt;http://TestSort#Thing_3&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_5&quot;&gt;http://TestSort#Thing_5&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_0&quot;&gt;http://TestSort#Thing_0&lt;/a&gt; &amp;quot;Thing_6&amp;quot;^^&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_7&quot;&gt;http://TestSort#Thing_7&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_2&quot;&gt;http://TestSort#Thing_2&lt;/a&gt; &amp;quot;Thing_2&amp;quot;^^&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&lt;br/&gt;
&lt;a href=&quot;http://TestSort#Thing_4&quot;&gt;http://TestSort#Thing_4&lt;/a&gt; &amp;quot;Thing_4&amp;quot;^^&lt;a href=&quot;http://www.w3.org/2001/XMLSchema#string&quot;&gt;http://www.w3.org/2001/XMLSchema#string&lt;/a&gt;&lt;br/&gt;
</description>
    
    
        <environment></environment>
    
        <key id="11084">SES-630</key>
        <summary>Incorrect query result ordering when optional statement pattern variables are involved</summary>
        <type id="1">Bug</type>
    
        <priority id="3">Major</priority>
    
        <status id="6">Closed</status>
        
        <resolution id="1">Fixed</resolution>
        
    
        
        <assignee username="james">James Leigh</assignee>
        
    

    
        
        <reporter username="damyan">Damyan Ognyanoff</reporter>
        
    

        
        <created>Thu, 30 Oct 2008 11:44:30 +0100 (CET)</created>
    <updated>Wed, 17 Dec 2008 14:05:32 +0100 (CET)</updated>

    
        
        
            
            
                
                    <version>2.0</version>
                
                    <version>2.0.1</version>
                
                    <version>2.1</version>
                
                    <version>2.1.1</version>
                
                    <version>2.1.2</version>
                
                    <version>2.1.3</version>
                
                    <version>2.2</version>
                
                    <version>2.1.4</version>
                
                    <version>2.2.1</version>
                
            
        
    

    
        
        
            
            
                
                    <fixVersion>2.2.2</fixVersion>
                
            
        
    

    
        
        
            
            
                
                    <component>Query Engine</component>
                
            
        
    

    
    
        <due></due>
    
    
        <votes>0</votes>
    
    

    
    
        <comments>
            
            <comment author="arjohn" created="Thu, 30 Oct 2008 11:47:02 +0100 (CET)" level="">When Var is not bound it is evaluated to throw a&lt;br/&gt;
ValueExprEvaluationException. The OrderComparator catches&lt;br/&gt;
QueryEvaluationException (or StoreException) and assumes that anything&lt;br/&gt;
that cannot be evaluated is the same as everything else. This results in&lt;br/&gt;
the sort method to conclude that all values are equal and no further&lt;br/&gt;
ordering is needed.&lt;br/&gt;
&lt;br/&gt;
I changed the OrderComparator in trunk and 2.2 branch to catch&lt;br/&gt;
QueryEvaluationException and treat that as a null value. This results in&lt;br/&gt;
the expected order.</comment>
            
        </comments>
    
    

    




    
    
    

</item>
    
</channel>
</rss>  

