Hello,

 

Sorry for the long post but I urgently need some help with the ADO.NET provider for C# 2005.   May I know what I am doing wrong or why this error would occur please?

 

I get an error “FirebirdSql.Data.FirebirdClient.FbException: I/O error for file CreateFile (open)” while trying to access the database. I am using the Firebird 2.0 provider for .NET 2005 and my Firebird is an embedded database for a stand alone application and I think the provider has some problems. I can’t be sure if the problem is here but I strongly suspect this because when I there is heavy usage of connections from the connection pool (between 15 and 25 I think) in one go and I leave my application idle, the connection pool count shows 0. I am confused as this error doesn’t come always and I am sure there are no issues like a) race conditions in my code b) any reference type based problems c) exceptions being swallowed.  But the software is unusable for more than 10 minutes especially when after a heavy usage, the application is left idle.  We did diagnose possible connection leaks but before every call, we do a Connection.Close() if the state of the connection is not closed already which would put the connection back to the pool.

 

 My connection string looks like this and it does get picked up from the configuration file too.

 

connectionString="ServerType=1;User=sysdba;Password=masterkey;Dialect=3;Database=DMFCC.fdb;Connection lifetime=15;Pooling=true;MinPoolSize=0;MaxPoolSize=100"

 

 

The following errors are cropping up in the log file consistently in more than one scenario

 

 

FirebirdSql.Data.FirebirdClient.FbException: I/O error for file CreateFile (open) "DMFCC.fdb"

Error while trying to open file ---> FirebirdSql.Data.Common.IscException: Exception of type 'FirebirdSql.Data.Common.IscException' was thrown.

   at FirebirdSql.Data.Client.Embedded.FesDatabase.ParseStatusVector(Int32[] statusVector)

   at FirebirdSql.Data.Client.Embedded.FesDatabase.Attach(DatabaseParameterBuffer dpb, String dataSource, Int32 port, String database)

   at FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()

   --- End of inner exception stack trace ---

   at FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()

   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.Create()

   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.CheckOut()

   at FirebirdSql.Data.FirebirdClient.FbConnection.Open()

 

While I log the Errors collection, from the FBException object, this is what I see

 

Source is                             : FirebirdSql.Data.FirebirdClient

HResult from the Exception is         : -2147467259

Message is                            : I/O error for file CreateFile (open) "DMFCC.fdb" Error while trying to open file

StackTrace is                         :    at FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()

   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.Create()

   at FirebirdSql.Data.FirebirdClient.FbConnectionPool.CheckOut()

   at FirebirdSql.Data.FirebirdClient.FbConnection.Open()

   at BIOS.DMFCC.PortConfigurations.GetPortSettings(String dbType, String connectionString) in C:\DMFCC\Development\Source Code\DMFCC\ConfigurationManager\PortConfigurations.cs:line 221

   at BIOS.DMFCC.ConfigurationSettings.GetPortSettings() in C:\DMFCC\Development\Source Code\DMFCC\ConfigurationManager\ConfigurationSettings.cs:line 163

TargetSite.Name is                    : Connect

TargetSite.Name is                    : Connect

ErrorCollection count is: 1

Error Class or Severitiy is   :0

LineNumber is                 :0

Message is                    :I/O error for file CreateFile (open) "DMFCC.fdb"

Error while trying to open file

Number is                     :335544344

InnerException is                     : FirebirdSql.Data.Common.IscException: Exception of type 'FirebirdSql.Data.Common.IscException' was thrown.

   at FirebirdSql.Data.Client.Embedded.FesDatabase.ParseStatusVector(Int32[] statusVector)

   at FirebirdSql.Data.Client.Embedded.FesDatabase.Attach(DatabaseParameterBuffer dpb, String dataSource, Int32 port, String database)

   at FirebirdSql.Data.FirebirdClient.FbConnectionInternal.Connect()

 

Thanks in advance,

Sriram

 

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Firebird-net-provider mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to