
Hi everyone, I'm new to MonetDB XQuery and have written a crude Cocoon generator for MonetDB using the example code for the JDBC client from the website. I am using the latest Bug Fix Release of MonetDB as announced by Sjoerd Mullender on 24-10-2007. When I execute the following query I get an error: --------------------------------------------------------- let $zz := doc('vogels.xml')//Vogels[data(Dwaalgast) = 'zeer zeldzaam'] return <vogeltjes>{$zz}</vogeltjes> --------------------------------------------------------- throws: java.sql.SQLException: ERROR: ERROR: XML Generation: NULL BAT has a 4415 head, but tail is NULL. ERROR: ERROR: xquery_print_result_loop: operation failed. However, when I change the XQuery to: --------------------------------------------------------- let $zz := doc('vogels.xml')//Vogels[data(Dwaalgast) = 'zeer zeldzaam'] return <vogeltjes>{$zz}azaz</vogeltjes> --------------------------------------------------------- everything's OK and I get the proper result. (The previous release threw the same error btw.) Also, when I join the results from the above query with another table to resolve some codes to code-descriptions, the query takes from 8.5 up to 11 seconds to execute, vs. <1 second for a query without the join. The result is a little over 1Mb in size. The query I use is this: --------------------------------------------------------- let $zz := doc('vogels.xml')//Vogels[Ecotoop_x0020_nest] return <vogeltjes> {for $vogel in doc('vogels.xml')//Vogels[Ecotoop_x0020_nest], $vc in doc('vogels-code.xml')//Vogels-code[data(Kolomnaam) = 'Ecotoop nest'][data(Code) = $vogel/Ecotoop_x0020_nest]/Codebeschrijving return <vogel> {$vogel/*} {$vc} </vogel> } </vogeltjes> --------------------------------------------------------- The latest preview release of eXist handles the join in 3.1 seconds, any ideas on why this join takes almost three times as long? I have a final question: how do I specify external variables using the JDBC client? Regards, Huib Verweij.