-
Feature Request
-
Resolution: Done
-
Major
-
EAP 5.0.0.CR1, EAP 5.0.0.CR2
-
None
-
MS SQL Server 2005 or 2008
MS JDBC drivers 2.0
-
Not Required
Over 700 tests fail on the MS SQL Server with MS JDBC driver 2.0. Problem is caused by following lines in the source code.
Class: src/main/org/jboss/messaging/core/impl/JDBCPersistenceManager.java
Method: getBytes(ResultSet rs, int columnIndex)
Lines: 2510 - 2515.
InputStream i = rs.getBinaryStream(columnIndex);
if (i == null)
{ return null; }is = new BufferedInputStream(rs.getBinaryStream(columnIndex),
BUFFER_SIZE);
Should be fixed as:
InputStream i = rs.getBinaryStream(columnIndex);
if (i == null) { return null; }
is = new BufferedInputStream(i, BUFFER_SIZE);
Description:
Problem is caused by JDBC's Adaptive buffering which is default buffering mode in the MS JDBC version 2.0 (in previous version of JDBC was ,,full buffering mode").
Column can be accessed by the getXXXStream only once in the Adaptive buffering mode. The second attempt causes exception.
Please see http://msdn.microsoft.com/en-us/library/bb879937.aspx
- relates to
-
JBPAPP-2571 Unstable JBM testsuite builds with MS SQL server and MS JDBC drivers 2.0
-
- Closed
-