[SQLiteJDBC] Disk I/O error when ResultSet > 2GB and "ORDER BY" used

Ford, Kai P kai.ford at aramco.com
Mon Aug 10 03:54:27 EDT 2009


I am getting a "disk I/O error" when the size of the ResultSet exceeds ~2GB and "ORDER BY" is used:
java.sql.SQLException: disk I/O error
at org.sqlite.DB.execute(DB.java:366)
at org.sqlite.Stmt.exec(Stmt.java:56)
at org.sqlite.Stmt.executeQuery(Stmt.java:90)
. . .

I am using sqlite-jdbc-3.6.14.2.jar on Linux 2.6.9-78.0.0.8.ELsmp (Red Hat Enterprise Linux WS release 4 (Nahant Update 7)) with Java 6 update 15.

The error does not occur if:

1)      I remove the "ORDER BY" clause

2)      I break up the query to give ResultSet that does not exceed 2 GB in size

3)      I run the query from sqlite3 command line interface


These symptoms suggest an integer wrap-around or other 32 bit defect in the sorting.  Has anyone else encountered this problem? Is this a known defect?  Is there a fix available?

Kai Peter Ford
c/o Saudi Aramco
Box 2750
+966 3 873-5172
kai.ford at aramco.com
Local time GMT+3


________________________________
The contents of this email, including all related responses, files and attachments transmitted with it (collectively referred to as "this Email"), are intended solely for the use of the individual/entity to whom/which they are addressed, and may contain confidential and/or legally privileged information. This Email may not be disclosed or forwarded to anyone else without authorization from the originator of this Email. If you have received this Email in error, please notify the sender immediately and delete all copies from your system. Please note that the views or opinions presented in this Email are those of the author and may not necessarily represent those of Saudi Aramco. The recipient should check this Email and any attachments for the presence of any viruses. Saudi Aramco accepts no liability for any damage caused by any virus/error transmitted by this Email.


More information about the SQLiteJDBC mailing list