Publish date: 2012-06-04

IBProvider 3.11.1. Internal changes

Bug fix.

Fix a stack overflow in processing of query with very long length.

Test example:

using System;
using System.Data;
using System.Data.OleDb;

class Program
 static void Main(string[] args)
  const string c_cn_str="provider=LCPI.IBProvider.3;"
                        +"user id=SYSDBA;"
   var cn=new OleDbConnection(c_cn_str);


   var sb=new System.Text.StringBuilder();

   sb.Append("select EMP_NO");

   for(int n=0;n!=((512*1024)-1);++n)

   sb.Append(" from EMPLOYEE");

   var cmd=new OleDbCommand(sb.ToString(),cn);

   //For IBProvider before v3.11.1
   // 1. Stack overflow in C++ destructor
   // 2. Abort of program execution
   //For IBProvider v3.11.1 and next
   // 1. Exception
   var reader=cmd.ExecuteReader(CommandBehavior.SingleResult);
  catch(Exception exc)
   Console.WriteLine("ERROR: {0}",exc.Message);
};//class Program

Publish date: 2012-06-04. Copyright: IBProvider. This material may be reproduced on other web sites, without written permission but link required.