Hi Jem,

We are looking into this and shall report back with our findings ...

Best Regards
Hugh Williams
Professional Services
OpenLink Software
Web: http://www.openlinksw.com
Support: http://support.openlinksw.com
Forums: http://boards.openlinksw.com/support



On 23 Jun 2009, at 15:18, Jem Rayfield wrote:

Hi,

We are experience an interesting feature with the availible JDBC drivers. (JDBC3 and JDBC4).
(Driver version: 05.10.3038. Transaction isolation level : 4.)

When an SQL invocation returns zero results we get into an infinte loop situation.

We are using iBatis as an ORM mapping tool.
iBatis checks the first result set which returns nothing. At this point we are in good shape. After which iBatis contiunes to check further result sets to ensure that there are no other results. However at this point the following is always true within the Driver code base:

   VirtuosoPreparedStatement .vresultset.more_result=true
   VirtuosoPreparedStatement.getMoreResults()

iBatis in turn continues iterating and checking empty result sets. The produces an infinte loop and a hanging process.
The driver should return FALSE as there are no results.


The query being invoked is as follows:

select * from DB.METADATA.STORY  where id in (

SPARQL PREFIX md: <http:// nolapps34.newsonline.tc.nca.bbc.co.uk:8890/md#>

SELECT ?id FROM <http:// nolapps34.newsonline.tc.nca.bbc.co.uk:8890/md#>

                WHERE {

                ?x md:id ?id .

                ?x md:title 'SOME STORY'

                }

)



FYI:

The version of iBatis is as follows: iBatis version (2.3.4.726) (latest stable).

The iBatis line of code which checks the resultset status is as follows: SqlExecutor.java line 354

Can you let us have your thoughts as this is a real pain.



FYI: We are unable to use hibernate as there is currently no hibernate dialect and wish to use an ORM tool.


Thanks

Jem


http://www.bbc.co.uk
This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated.
If you have received it in error, please delete it from your system.
Do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately.
Please note that the BBC monitors e-mails sent or received.
Further communication will signify your consent to this.

Reply via email to