Package: libmono-system-data1.0-cil
Version: 1.9.1+dfsg-3
Severity: serious
The Microsoft SQL Client (System.Data.SqlClient) part of the System.Data
library, has a serious regression when running on the CLI 1.1 profile.
This is caused by a patch introduced in version 1.9.1+dfsg-3 that fixes
connection leaks in the connection pool.
The symptom of the issue looks like this:
Source array type cannot be assigned to destination array type.
at Mono.Data.Tds.Protocol.TdsConnectionPool.GetConnection () [0x00000]
at System.Data.SqlClient.SqlConnection.Open () [0x00000]
The code part of the patch that causes the issue:
+#if NET_2_0
+ if (Interlocked.CompareExchange<ITds>
(ref list [index], connection, null) != null) {
+#else
+ if (Interlocked.CompareExchange (ref
(list as object[]) [index], connection, null) != null) {
+#endif
The "as" cast for CLI 1.1 is the culprit. Unfortunately the "as" cast
operator was abused to make an ordinary cast causing the error not to
show up at compile stage. The fix will probably just be to remove the
useless cast, as the "list" variable is defined as ITds[] and thus no
need to cast it first to use the indexer.
--
Mit freundlichen Grüßen,
Mirco Bauer
Leiter Software & System-Entwicklung (CSA, CTO)
GSD Software Design GmbH
Chrysanderstrasse 1
21029 Hamburg
www: http://www.gsd-software.net
email: [EMAIL PROTECTED]
tel: +49 40 72692500
fax: +40 40 72692503
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]