java.sql.SQLException: Error fetching row in 
joined table: java.sql.SQLException: IO problem: java.io.IOException: Negative 
seek offsetNegative seek offset
        at 
org.enhydra.instantdb.db.SQLProg.execute(SQLProg.java:276)
        
at 
org.enhydra.instantdb.jdbc.idbStatement.execute(idbStatement.java:235)
        
at 
org.enhydra.instantdb.jdbc.idbStatement.executeQuery(idbStatement.java:91)
        
at 
org.enhydra.instantdb.SampleThread.run(ScriptTool.java:542)
        
at java.lang.Thread.run(Unknown Source)
If I add a WHERE clause everything works as expected e.g. 
SELECT country.id, country.name, city.id, city.name FROM 
country LEFT OUTER JOIN city ON country.id=city.country_id WHERE country.id = 
1;
 
However other WHERE conditions fail, eg country.id >= 
1
 
Here is a script that reproduces the problem...
 
; First load the JDBC driver and open a database.
d 
org.enhydra.instantdb.jdbc.idbDriver;
o jdbc:idb=sample.prp;
 
; dump SQL and results to "trace.log"
e SET 
EXPORT "trace.log" TRACE 2 CONSOLE;
 
; Create the tables
e DROP TABLE country;
e CREATE TABLE 
country (
  id     int not null,
  
name   varchar(200) not null );
e CREATE UNIQUE INDEX country_pk ON 
country ( id );
 
e DROP TABLE city;
e CREATE TABLE city (
  
id         int not null,
  
country_id int not null,
  name       
varchar(200) not null );
e CREATE UNIQUE INDEX city_pk ON city ( id 
);
 
; Create a country with no cities.
e INSERT INTO country 
(id,name) VALUES (1,"USA");
 
; Returns single country with nulls for city.id and city.name 
- as expected.
q SELECT country.id, country.name, city.id, city.name FROM 
country LEFT OUTER JOIN city ON country.id=city.country_id WHERE country.id = 
1;
 
; Same as above but without the WHERE clause.  Result 
should be the same.  Creates java.io exception!!
q SELECT country.id, 
country.name, city.id, city.name FROM country LEFT OUTER JOIN city ON 
country.id=city.country_id;
 
c close;
 
Hope someone can help.
 
Kind regards,
 
Phillip Baird