[Mono-bugs] [Bug 79323][Wis] Changed - SessionSQLServerHandler fails when database restart

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Fri Sep 8 11:33:57 EDT 2006


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by informatique.internet at fiducial.fr.

http://bugzilla.ximian.com/show_bug.cgi?id=79323

--- shadow/79323	2006-09-08 11:18:10.000000000 -0400
+++ shadow/79323.tmp.8958	2006-09-08 11:33:57.000000000 -0400
@@ -1,14 +1,14 @@
 Bug#: 79323
 Product: Mono: Class Libraries
 Version: unspecified
-OS: 
+OS: unknown
 OS Details: 
 Status: NEW   
 Resolution: 
-Severity: 
+Severity: Unknown
 Priority: Wishlist
 Component: Sys.Web
 AssignedTo: gonzalo at ximian.com                            
 ReportedBy: informatique.internet at fiducial.fr               
 QAContact: mono-bugs at ximian.com
 TargetMilestone: ---
@@ -62,6 +62,66 @@
 
 How often does this happen? 
 always
 
 Additional Information:
 It use to work before!
+
+------- Additional Comments From informatique.internet at fiducial.fr  2006-09-08 11:33 -------
+I've tracked the problem 
+
+add this to :GetReaderWithRetry
+
+IDataReader GetReaderWithRetry (string id)
+		{
+			try {
+				return GetReader (id);
+			} catch (Exception e) {
+				Console.WriteLine(e.Message);
+			}
+
+			try {
+				cnc.Close ();
+			} catch (Exception e){
+				Console.WriteLine("Boom when cnc.Close");
+				Console.WriteLine(e.Message);
+				Console.WriteLine(e.StackTrace);
+			}
+
+			cnc.Open ();
+			return GetReader (id);
+		}
+
+and we obtain:
+
+Backend sent unrecognized response type: ���
+Boom when cnc.Close
+Write failure
+  at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer,
+Int32 offset, Int32 size) [0x00000]
+  at System.IO.BufferedStream.Flush () [0x00000]
+  at Npgsql.NpgsqlReadyState.Query (Npgsql.NpgsqlConnector context,
+Npgsql.NpgsqlCommand command) [0x00000]
+  at Npgsql.NpgsqlConnector.Query (Npgsql.NpgsqlCommand queryCommand)
+[0x00000]
+  at Npgsql.NpgsqlConnector.ReleaseRegisteredListen () [0x00000]
+  at Npgsql.NpgsqlConnector.ReleaseResources () [0x00000]
+  at Npgsql.NpgsqlConnectorPool.UngetPooledConnector
+(Npgsql.NpgsqlConnection Connection, Npgsql.NpgsqlConnector Connector)
+[0x00000]
+  at Npgsql.NpgsqlConnectorPool.ReleasePooledConnectorInternal
+(Npgsql.NpgsqlConnection Connection, Npgsql.NpgsqlConnector Connector)
+[0x00000]
+  at Npgsql.NpgsqlConnectorPool.ReleasePooledConnector
+(Npgsql.NpgsqlConnection Connection, Npgsql.NpgsqlConnector Connector)
+[0x00000]
+  at Npgsql.NpgsqlConnectorPool.ReleaseConnector
+(Npgsql.NpgsqlConnection Connection, Npgsql.NpgsqlConnector Connector)
+[0x00000]
+  at Npgsql.NpgsqlConnection.Close () [0x00000]
+  at
+System.Web.SessionState.SessionSQLServerHandler.GetReaderWithRetry
+(System.String id) [0x00000]
+
+In fact i think the problem is pooling, when we call Close(),
+something is sent to the database, and it fails... and internally the
+connection is always opened! It seems to be an Npsql bug!


More information about the mono-bugs mailing list