anonymous wrote : Are you not however forcing transfer of the bytes from the 
database even for drivers that don't have this bug?

I don't think so.  Assuming drivers properly implement getBytes(pos, 
len)/setBytes(pos, data) such that they only transfer the requested/supplied 
number of bytes from the database then it is OK.  I only transfer the amount 
requested by the caller or size of the buffer held by the stream.

I have done some tests and can transfer 128MB in and out of the DB (in 1MB 
chunks) without blowing a 64MB stack (MySQL did struggle to process it).  I 
have run into an interesting issue with MySQL (which may negate all I have said 
above) that you can't store a blob larger the max_allowed_packet setting.  You 
don't get an exception you just end up with a NULL in the database.  I am going 
to raise this as an issue with MySQL.

Its possible we may need 2 implementations one for DBs (like MySQL) where 
getBytes/setBytes is required and one for DBs which getBinaryStream is more 
efficient.

Regards,
Mike.
 

View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3861205#3861205

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3861205


-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
JBoss-Development mailing list
JBoss-Development@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to