I've recently built a work flow that requires numerous parameters that vary during the run. I would like to use a lightweight database to store and then fetch those parameters as the processes require. Towards that end I've created a simple HSQL database (version <a href="http://1.8.0.10"><font color="red"><b>MailScanner warning: numerical links are often malicious:</b></font> 1.8.0.10</a>). This is all on Windows XP Pro.<br>
<br>The HSQLDB is launched as ../lib/hsqldb.jar org.hsqldb.Server and seems to work fine from several different consoles and GUI admin tools. I can insert and query as one would expect.<br><br>In Kepler 1.0 I have a simple test work flow: SDF Director, Open Database Connection, to Database Query, to a display sink (text window). <br>
<br>The database connection seems to work fine as I can see the connection from the HSQL log and on the display sink when I do not have the Database Query Actor connected and in place; for example, the following is output from the Database Connection actor to the display sink with the Database Query Actor out-of-the-loop.<br clear="all">
<br>dbconnection(org.hsqldb.jdbc.jdbcConnection@faf9c1)<br><br>And, I can use a Database Writer and actually insert data to a table in my database. <br><br>INSERT INTO PRODUCT (product_id, product_time, product_timemean, product_timestdev, product_xreflist) VALUES ('3116-SB',15.1, 7.6, 1.51, '0R-XXXX 0R-ABCD') ;<br>
<br>So, I think the connection is fine.<br><br>However, upon any query I receive an exception as follows:<br><br>exception in SQL in .TestDBConnect.Database Query<br>Because:<br>SQL executeQuery exception in .TestDBConnect.Database Query<br>
Because:<br>Connection is broken: Transfer corrupted<br><br>The full stack trace is provided below.<br><br>Also, the Open Actor returns with an empty Query Builder window, except for an error message: There was a problem loading the schema or it was empty.<br>
<br>So, after looking through the source for org.geon.DatabaseQuery, I suspect that the connection is closed when the Database Query actor requests the database schema and perhaps that fails, then that's it. Has anyone had a similar experience? Ideas or suggestions?<br>
<br>-- <br>Best regards,<br><br>Jackey Wall, PMP<br><br>(309) 636-5944 Office<br>(309) 397-4727 Mobile<br>(425) 663-2277 Fax<br><br> "The beginnings and endings of all human undertakings are untidy, the<br>building of a house, the writing of a novel, the demolition of a bridge, and,<br>
eminently, the finish of a voyage."<br>— John Galsworthy - Over the River, 1933<br><br>Stack trace:<br><br>ptolemy.kernel.util.IllegalActionException: exception in SQL<br>  in .TestDBConnect.Database Query<br>Because:<br>
SQL executeQuery exception<br>  in .TestDBConnect.Database Query<br>Because:<br>Connection is broken: Transfer corrupted<br>    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:338)<br>    at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:398)<br>
    at ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:170)<br>    at ptolemy.actor.CompositeActor.fire(CompositeActor.java:400)<br>    at ptolemy.actor.Manager.iterate(Manager.java:688)<br>
    at ptolemy.actor.Manager.execute(Manager.java:332)<br>    at ptolemy.actor.Manager.run(Manager.java:1071)<br>    at ptolemy.actor.Manager$3.run(Manager.java:1112)<br>Caused by: ptolemy.kernel.util.IllegalActionException: SQL executeQuery exception<br>
  in .TestDBConnect.Database Query<br>Because:<br>Connection is broken: Transfer corrupted<br>    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:306)<br>    ... 7 more<br>Caused by: java.sql.SQLException: Connection is broken: Transfer corrupted<br>
    at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)<br>    at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)<br>    at org.hsqldb.jdbc.jdbcStatement.executeQuery(Unknown Source)<br>    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:304)<br>
    ... 7 more<br>Caused by: ptolemy.kernel.util.IllegalActionException: SQL executeQuery exception<br>  in .TestDBConnect.Database Query<br>Because:<br>Connection is broken: Transfer corrupted<br>    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:306)<br>
    at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:398)<br>    at ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:170)<br>    at ptolemy.actor.CompositeActor.fire(CompositeActor.java:400)<br>
    at ptolemy.actor.Manager.iterate(Manager.java:688)<br>    at ptolemy.actor.Manager.execute(Manager.java:332)<br>    at ptolemy.actor.Manager.run(Manager.java:1071)<br>    at ptolemy.actor.Manager$3.run(Manager.java:1112)<br>
Caused by: java.sql.SQLException: Connection is broken: Transfer corrupted<br>    at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)<br>    at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)<br>    at org.hsqldb.jdbc.jdbcStatement.executeQuery(Unknown Source)<br>
    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:304)<br>    ... 7 more<br>Caused by: java.sql.SQLException: Connection is broken: Transfer corrupted<br>    at org.hsqldb.jdbc.jdbcUtil.sqlException(Unknown Source)<br>
    at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source)<br>    at org.hsqldb.jdbc.jdbcStatement.executeQuery(Unknown Source)<br>    at org.geon.DatabaseQuery.fire(DatabaseQuery.java:304)<br>    at ptolemy.actor.AtomicActor.iterate(AtomicActor.java:398)<br>
    at ptolemy.actor.sched.StaticSchedulingDirector.fire(StaticSchedulingDirector.java:170)<br>    at ptolemy.actor.CompositeActor.fire(CompositeActor.java:400)<br>    at ptolemy.actor.Manager.iterate(Manager.java:688)<br>
    at ptolemy.actor.Manager.execute(Manager.java:332)<br>    at ptolemy.actor.Manager.run(Manager.java:1071)<br>    at ptolemy.actor.Manager$3.run(Manager.java:1112)<br><br><br><br>