Connection Pool - FbConnectionInternal.Database.BrokenConnection
----------------------------------------------------------------

                 Key: DNET-917
                 URL: http://tracker.firebirdsql.org/browse/DNET-917
             Project: .NET Data provider
          Issue Type: Bug
          Components: ADO.NET Provider
    Affects Versions: 7.1.1.0
            Reporter: Patrick Frießnegg
            Assignee: Jiri Cincura
            Priority: Minor


When a network issue leads to a broken connection (like you kill fbinet.exe in 
classic mode) you get following exception:

Message "Unable to complete network request to host \"\r\nNo message for error 
code 335544721 found."   string
   at FirebirdSql.Data.FirebirdClient.FbCommand.ExecuteScalar() 
in 
C:\Synesc.GmbH\source\git\synesc.FirebirdClient\Provider\src\FirebirdSql.Data.FirebirdClient\FirebirdClient\FbCommand.cs:line
 528
+               ex.GetType()    {Name = "FbException" FullName = 
"FirebirdSql.Data.FirebirdClient.FbException"} System.Type {System.RuntimeType}


This does set FbConnectionInternal.Database.BrokenConnection to true, so the 
connection is not put back into the connectionpool.
But if you simulate the same issue with "delete from mon$attachments" you get:

Message "connection shutdown"   string
   at FirebirdSql.Data.FirebirdClient.FbCommand.ExecuteScalar() 
in 
C:\Synesc.GmbH\source\git\synesc.FirebirdClient\Provider\src\FirebirdSql.Data.FirebirdClient\FirebirdClient\FbCommand.cs:line
 528
+               ex.GetType()    {Name = "FbException" FullName = 
"FirebirdSql.Data.FirebirdClient.FbException"} System.Type {System.RuntimeType}


In this case, FbConnectionInternal.Database.BrokenConnection is not set and 
therefore the connection IS put back into the connectionpool.
But this connection is still permanently broken. The next time it's used, it's 
100% going to fail.

It is a minor issue tho, because in the second attempt it will throw the 
exception #1, and therefore clean itself after.
But still the software will always require a second attempt to request the 
database.


related to
http://tracker.firebirdsql.org/browse/DNET-668
http://tracker.firebirdsql.org/browse/DNET-818
http://tracker.firebirdsql.org/browse/DNET-916

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://tracker.firebirdsql.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       


_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to