Bug #5974 | Exception "trying to fetch row:null" | ||
---|---|---|---|
Submitted: | 8 Oct 2004 9:46 | Modified: | 26 Oct 2004 0:12 |
Reporter: | Alexander Flödl | Email Updates: | |
Status: | Won't fix | Impact on me: | |
Category: | Connector / J | Severity: | S3 (Non-critical) |
Version: | 4.0.21 | OS: | United Linux |
Assigned to: | Mark Matthews | CPU Architecture: | Any |
[8 Oct 2004 9:46]
Alexander Flödl
[18 Oct 2004 20:07]
Mark Matthews
The error message you posted does not appear to come from our driver, but from application code. Could you please post the _full_ stack trace from your exception, as well as the version of the _JDBC_ driver you're using (the server version doesn't matter in this case).
[25 Oct 2004 16:44]
Alexander Flödl
i have changed the method for reading and updating the records: - first i read <n> records from the streaming resultset (table A) - next i'm updating the records in table B with the data from the stream. - create a batch update statement to change the state in table A - after <n2> records the streaming resultset will be aborted and closed and the batch statements will be executed - after that, i'm reopening the streaming resultset with the rest of the records. proceeding until all records are updated. this works for me. sorry we don't have much time to follow this error anymore, but it seams that reading from a streaming resultset with updating records in the same table causes this error.
[26 Oct 2004 0:12]
Mark Matthews
This can't be fixed if you're using MyISAM unless you use SQL_BIG_RESULTS as a flag to your query (to cause MySQL to buffer the result in a temporary table). There is nothing the JDBC driver can do on your behalf, as MyISAM is _not_ transactional, and doesn't guarantee consistent reads. If you want consistent reads, you need to use InnoDB type tables.