Subject Re: [Firebird-Java] Re: Test results: JayBird vs Interclient on blob select on Linux and Windows
Author Sergei P. Volin
> You can fix driver by
> adding following lines into org.firebirdsql.jgds.GDS_Impl (line 1496):
>
> db.socket.setReceiveBufferSize(16 * 1024);
> db.socket.setSendBufferSize(16 * 1024);
>

Roman,
I've downloaded org.firebirdsql.jgds.GDS_Impl.java from CVS.
After looking into the code I became not sure if it is the right place
to insert lines. Nevertheless I inserted lines and tried to compile -
GDS_Impl.java:1496: unreported exception java.net.SocketException; must be
caught or declared to be thrown
db.socket.setReceiveBufferSize(16 *
1024);

The peice of code is (in void writeBLR(isc_db_handle_impl db, XSQLDA xsqlda)
methode):

for (int i = 0; i < xsqlda.sqld; i++) {
int dtype = xsqlda.sqlvar[i].sqltype & ~1;
if (dtype == SQL_VARYING || dtype == SQL_TEXT) {
blr_len += 3;
} else if (dtype == SQL_SHORT || dtype == SQL_LONG ||
dtype == SQL_INT64 ||
dtype == SQL_QUAD ||
dtype == SQL_BLOB || dtype == SQL_ARRAY) {
blr_len += 2;
} else {
db.socket.setReceiveBufferSize(16 * 1024);
db.socket.setSendBufferSize(16 * 1024);
blr_len++;
}
blr_len += 2;
par_count += 2;
}

Please, check it.
Thanks,
Sergei Volin.