Reading large chunks in MySqlStream cause the runtime
to throw IOExceptions since the count argument passed
to Stream.Read is larger than the runtime can handle.
The patch attached tries to fix this problem.
How large are you rows? The driver doesn't read multiple
rows in a single read call. Each row is broken down into it's
own packet so unless a single row is greater than 2 gigs, it
shouldn't be causing a problem.
How much are trying to read?
Reggie
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Sure that the resultsets are broken down? The rows of my
query have an average size of 200 byte. The largest row has
a size of arround 4 kbyte. But when running my query I've
got an exception in the fixed method. Count indicated that 7
megabytes of data were to read. Seven megabytes, that sounds
like the size of the entire resultset.
BTW: The limit for a row isn't 2 gigs. It must be below 7
megs for the .NET Framework: I've created the patch, since
the framework refused to process the
seven-megabyte-read-request.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
positive about the resultsets. The datareader object only
reads 1 row at a time, each time you call the .Read()
method. It is during this read method, that the driver
eventually calls ReadBytes on the stream object. If it is
requesting 7 megs from the stream object, then there is an
error in the size computation somewhere. Are you using
blobs? What version MySql server and what version of my
driver are you using?
Reggie
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The patch mentioned
Logged In: YES
user_id=523261
How large are you rows? The driver doesn't read multiple
rows in a single read call. Each row is broken down into it's
own packet so unless a single row is greater than 2 gigs, it
shouldn't be causing a problem.
How much are trying to read?
Reggie
Logged In: YES
user_id=7017
Sure that the resultsets are broken down? The rows of my
query have an average size of 200 byte. The largest row has
a size of arround 4 kbyte. But when running my query I've
got an exception in the fixed method. Count indicated that 7
megabytes of data were to read. Seven megabytes, that sounds
like the size of the entire resultset.
BTW: The limit for a row isn't 2 gigs. It must be below 7
megs for the .NET Framework: I've created the patch, since
the framework refused to process the
seven-megabyte-read-request.
Logged In: YES
user_id=523261
positive about the resultsets. The datareader object only
reads 1 row at a time, each time you call the .Read()
method. It is during this read method, that the driver
eventually calls ReadBytes on the stream object. If it is
requesting 7 megs from the stream object, then there is an
error in the size computation somewhere. Are you using
blobs? What version MySql server and what version of my
driver are you using?
Reggie
Logged In: YES
user_id=523261
I may have commited some changes to other users posts
that corrected this. Can you check the latest cvs?