[All]
List of Bug Fixes in Update 2 for Delphi and C++Builder 2009
By: Kris Houser
Abstract: This article lists all the major bugs that are fixed in Update 2.
| QC #: |
Date Reported: |
Area: |
| 10013 |
2/14/2008 |
Database\DBExpress |
| Description: |
Steps: |
A multithreaded application using the DBX4 Informix driver + the
DBXPool delegate will cause a "Connection Name in Use" Informix exception
to be thrown.
The customer had previously been using the Luxena DBX
driver with a 3rd party connection pool product from RemObjects and the
error did not occur with that driver.
|
I have attached a test case that reproduces the error most of the
time.
It spawns multiple threads that open a connection to an
Informix database, open a TSQLtable ad iterates through the rows and then
closes the database at the end.
Please modify the connection to
the database and choose a small table to iterate through. Please modify
the column name on line 54 of IFxThreadUnit.pas and choose an alternative
varchar column for your table. |
| QC #: |
Date Reported: |
Area: |
| 62992 |
6/5/2008 |
Database\DBExpress |
| Description: |
Steps: |
[QC Short Description] DBExpress Problems reading/writing
Text/Binary Blob Data in Interbase 7 and Blackfish
[QC
Description] Interbase 7 problems: Reading / Writing Text/Binary
Blob Data
BlackfishSQL Problems Writiing Binary
Blobs
Oracle I have not tested?????
example data -
working fine for MS-SQL DBExpress driver---> Read Text
Blob Var BStream : TStream; Blobfeld: TField; St:
String;
st := dmodul.quauswahl.FieldByName(zs).asstring; //it seems
to make problems with Interbase
alternative this will be OK for
MSSQL und MySQL Blobfeld :=
dmodul.quauswahl.FieldByName(zs); BStream:=
dmodul.Quauswahl.CreateBlobStream(blobfeld, bmRead); try sz :=
BStream.Size; if sz > 0 then begin BStream.Read(
. End; finally BStream.Free; end;
Write Text
Blob Var SParM: TParams; Rtftxt: String; SParM :=
TParams.Create(self);
dmodul.quauswahl.Close;
dmodul.quauswahl.SQL.Clear; dmodul.quauswahl.SQL.Add( Insert Into
BlobTab(ID,BLOBFLD)VALUES(1,:par)
); SParM.CreateParam(ftBlob,'par',ptInput); SParM.ParamByName('par').asstring
:= rtftxt; // for real text //or with TMemo Field .
SParM.ParamByName('par').Assign( TMemo(TMemoControl).lines);
dmodul.quauswahl.Params := SParM; dmodul.quauswahl.ExecSQL;
//Interbase have problems here dmodul.quauswahl.Close;
Read
Binary Blob var Stream: TStream; query: TSQLquery; fld:
TField; if not query.FieldByName(zs).isnull then //Interbase results
NULL also for non NULL fields begin fld :=
query.FieldByName(zs); Stream := query.CreateBlobStream(fld, bmRead);
//Blackfish MySQL and MSSQL are OK; not Interbase End;
Write
Binary Blob FStream := TMemoryStream.Create; FStream.LoadFromFile
(binfiledlg.FileName ); dmodul.quleer1.Close;
dmodul.quleer1.SQL.Clear; dmodul.quleer1.SQL.Add( Insert Into
BlobTab(ID,BLOBFLD)VALUES(1,:par) ); dmodul.quleer1.Params[p].DataType
:=
ftBlob; dmodul.quleer1.Params[p].SetBlobData(FStream.Memory,FStream.Size); dmodul.quleer1.ExecSQL;
//Blackfish and Interbase do not work error in DBXPlatform.pas row 249
dmodul.quleer1.Close;
QC Entry 62992
|
TDBXTiburonBugsSuite.Native.DB.Test.exe connection=BlackfishSQL
-s:TestRaid_262742 |
| QC #: |
Date Reported: |
Area: |
|
9/3/2008 2:26:09 PM |
Database |
| Description: |
Steps: |
Add a properly resourced error message for the exception located
in:
procedure TDBXDriver.LoadMetaDataCommandFactory(const
MetaDataCommandFactoryClassName: UnicodeString; const
MetaDataCommandFactoryPackageName: UnicodeString); |
|
| QC #: |
Date Reported: |
Area: |
|
9/10/2008 4:24:26 PM |
Database\ADO |
| Description: |
Steps: |
[actually Delphi.NET issue; breaks RS2007]
Calling
TAdoDbxConnection.Open fails with with a
System.NullReferenceException.
This is a problem because
essentially installing RAD Studio 2009 means you can no longer run AdoDbx
applications in RAD Studio 2007.
Reported by David Clegg. |
TDBXTiburonBugsSuite.Managed.DB.Test.exe
connection=blackfishsqlconnection -s:otestraid_265239
or
Try
to run the attached project in
Tiburon.
|
| QC #: |
Date Reported: |
Area: |
|
9/19/2008 1:29:23 PM |
Database |
| Description: |
Steps: |
AdoDbx doesn't like the data generated using Data Generator for a
Time column type
|
DataAccess.Managed.DB.Test.exe connection=IBCONNECTION
-s:oTestReadWriteAll
exp: succeed creating and inserting data into
a AllColumn table using adodbx act: Error:
ibconnection_oTestReadWriteAll Type: FormatException Msg : String
was not recognized as a valid DateTime. Ex Class:
FormatException Stack Trace: at
TestFramework.TTestCase.Invoke(String AMethod) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line 2331 at
TestFramework.TTestCase.RunTest(TTestResult testResult) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line 2376 at
Borland.Data.TTestCaseExtension.RunTest(TTestResult testResult) at
TestFramework.TTestResult.RunTestRun(ITest test) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line
1197
|
| QC #: |
Date Reported: |
Area: |
|
9/24/2008 3:31:39 PM |
Database |
| Description: |
Steps: |
MySQL, Oracle, MSSQL, ASA, and ASE
Cannot insert data into a
DBXDataTypes.BytesType using AdoDbx
|
TDBXTiburonBugsSuite.Managed.Db.Test.exe connection=mysqlconnection
-s:TestRaid_265479
exp: works as it does in Dbx and SqlExpr act:
Error: ASECONNECTION_oTestRaid_adodbx Type: TAdoDbxException Msg
: dbExpress driver does not support the TDBXTypes.UNKNOWN data type.
Vendor error message: . Ex Class: TAdoDbxException Stack
Trace: at TestFramework.TTestCase.Invoke(String AMethod) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line 2331 at
TestFramework.TTestCase.RunTest(TTestResult testResult) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line 2376 at
Borland.Data.TTestCaseExtension.RunTest(TTestResult testResult) at
TestFramework.TTestResult.RunTestRun(ITest test) in
D:\projects\tp\Testing\dunit\src\TestFramework.pas:line
1197
|
| QC #: |
Date Reported: |
Area: |
| 67210 |
9/26/2008 |
Database\dbExpressCore |
| Description: |
Steps: |
[QC Short Description] TSQLConnection Driver property and DBX
.ini file deployment
[QC Description] dbExpress applications
compiled with Delphi 2009 now require the presence of the dbxdrivers.ini
and dbxconnections.ini files (either in the current directory or with
information specified in the registry?).
It used to be possible to
deploy applications compiled with Delphi without the dbxdrivers.ini and
dbxconnections.ini (and this should still be possible, of course). QC
Entry 67210
|
Produce a VCL Forms application with dbExpress (a TSQLConnection
component pointing to some database is enough) and try to deploy it to a
clean machine - without Delphi on it. |
| QC #: |
Date Reported: |
Area: |
|
11/4/2008 1:55:13 PM |
Database |
| Description: |
Steps: |
Borland.Data.AdoDbxClient.dll has the wrong description incorretly
labelled as the DbxCommonDriver assembly instead.
Note: This needs
to be corrected in order to have correct label for this reference in
Visual Studio for Delphi Prism. See 266252 |
right click on Borland.Data.AdoDbxClient.dll, click
properties go under Version and notice the Description
field
exp: something like "CodeGear AdoDbxClient for .NET" act:
"CodeGear DBXCommon Dirver layer for .NET"
When 266252 is fixed,
this message is showed under the "References" under Solution Explorer in a
Visual Studio Project if the assembly was added. Thus, incorrectly
identifiying itself as the DBXCommonDriver, and not the AdoDbxClient
assembly. |
| QC #: |
Date Reported: |
Area: |
|
11/7/2008 3:26:25 PM |
Database\Data Explorer |
| Description: |
Steps: |
| Assertion failure when trying to open the Tables node of an MSSQL
connection. |
Install the latest Tiburon build 12.0.3232.17997 Run the product
and choose the Data Explorer Open the MSSQLConnection, if necessary
setup the connection Try opening the Tables node See attached
bitmap |
Connect with Us