Page 1 of 3

Firebird 2.1 final release

Posted: 21.04.2008, 07:04
by martinalex
The final release of Firebird 2.1 has been launched now. :)
See
http://www.firebirdsql.org/rlsnotes/Fir ... eNotes.pdf

A bit more than one year after the first 2.1 alpha release in March 2007.

Since then there were again and again forum messages that Zeos does not work with FB 2.1. The reply sometimes was 'FB 2.1 is still alpha (or beta). We are waiting for the final release to start Zeos changes. '

The final release is there, what is the current status or plans for Zeos with Firebird 2.1?

The last Zeos version I have tested was Zeos 6.6.2 from Dec 07 and it didn't work with FB 2.1 :(

martinalex

Posted: 21.04.2008, 08:09
by sandeep_c24
I haven't downloaded FB2.1 but could you please tell what's not working?

Sandeep

Posted: 21.04.2008, 08:50
by martinalex
Zeos doesn't work at all with Firebird 2.1. :(

I have an Access Violation during database Connect, which is the first call to the Firebird Dll.
I guess that Firebird has changed some API's for 2.1

Firebird 2.1 does work ok on my PC since one year, e.g. when used with FlameRobin, a database utility. :)


martinalex

Posted: 21.04.2008, 10:49
by sandeep_c24
Hi martinalex

I just installed FB2.1 and used it with my app and it worked fine.

I did not uninstall FB2.0 but shut it down and I was using FBCLIENT from FB2.1.

I used protocol firebird-2.0.

Sandeep

Posted: 21.04.2008, 12:28
by martinalex
Hi Sandeep,

I do the same. A test program runs ok with fbclient.dll from FB 2.0.
When replace the dll with fbclient from FB 2.1 (and replace all other required files) I have an Access Violation.


martinalex

Posted: 21.04.2008, 21:36
by sandeep_c24
Hi martinalex

It works for me with the FBCLIENT from 2.1 as well.

Sandeep

Posted: 22.04.2008, 01:38
by cipto_kh
Sandeep, I think you forget to replace the fbclient.dll on your Windows\system32 with version 2.1

I already try with Fb 2.1 and yes there is a problem that martinalex said. The problem is little strange, the first attempt to connect will fail but the second call will success, so there is a change in FB client API. Now the problem how can we know the new client API? where to get that information? Sorry I'm not have this knowledge now.

Posted: 22.04.2008, 08:06
by martinalex
Hi cipto_kh


Thank you for this tip. :)
>> the second call will success
This is a strange behaviour.

My program stoped after an unsuccessful connect, so I never tried a second connect. :wallb:

At least I come across the connect access violation and can test what else does work with FB2.1 and what not.
This is a workaround, but I doubt if Zeos with FB 2.1 is stable.


martinalex

Posted: 22.04.2008, 21:12
by martinalex
Hi cipto_kh,

the second connect works ok and the read access with FB 2.1 looks normal. But when I try to insert a lot of data I have access violations for each insert. After a few hundred access violations my program crashes with stack overflow.

I have checked Zeos SVN, there are no changes since version 6.6.2 for Firebird.

At the moment there is no way to use FB 2.1 with Zeos.
It is not urgent since FB 2.0 is mostly sufficient, but 2.1 has some interesting new features.
Since I don't have the knowledge to fix those Zeos components I have to wait for a new Zeos release with FB 2.1 support or have to switch to other components. :(

Regards

martinalex

Posted: 23.04.2008, 08:38
by sandeep_c24
Hi martinalex

I am working on something on Zeos and have changed following files. If you want you can try them and see if they work. These are just for testing purpose please don't use them in your real applications.

src/component/ZSqlMetadata.pas
src/dbc/ZDbcAdoMetadata.pas
src/dbc/ZDbcASAMetadata.pas
src/dbc/ZDbcDbLibMsSqlMetadata.pas
src/dbc/ZDbcDbLibSybaseMetadata.pas
src/dbc/ZDbcInterbase6Metadata.pas
src/dbc/ZDbcIntfs.pas
src/dbc/ZDbcMetadata.pas
src/dbc/ZDbcMySqlMetadata.pas
src/dbc/ZDbcOracleMetadata.pas
src/dbc/ZDbcPostgreSql.pas
src/dbc/ZDbcPostgreSqlMetadata.pas
src/dbc/ZDbcPostgreSqlUtils.pas
src/dbc/ZDbcSqLiteMetadata.pas


Sandeep

Posted: 02.05.2008, 03:56
by cipto_kh
I look include directory from FB 2.1 but it only header file. What reference to build FB 2.1 plain driver? Someone in here have experience to build database driver? I completely new for this stuff :(

Posted: 06.05.2008, 18:34
by mdaems
Hi cipto,

I think you best start from the Interbase API documentation. This should give you a good impression about the workings of FB as far as I know. You'll certainly find most of the structures in the IB documentation back in the header files (include dir).

Unfortunately this doesn't tell you more about the new additions in FB since they split off from IB.

Who knows where you get these differences from? I think this mainly concerns new functionalities that are very FB specific (and thus not that important to Zeos), but you never know how these functions can help performance in the newer drivers.

Mark

Posted: 08.05.2008, 08:53
by draconius
Hi all,

i've try'd it to and always on the second attemp i can activate :x .

Does anyone knows what's changed so it not work anymore? :(

Hopefully a fix will be soon available. :wink:

Best regards

Draconius

Posted: 11.05.2008, 17:23
by patyi
Hi all,

Take a look to document Firebird 2.1 Release Notes, section Changes to the Firebird API and ODS. For example :

Additions to the isc_database_info() Structure V. Khorsun

The following items have been added to the isc_database_info() function call structure:

isc_info_active_tran_count
Returns the number of currently active transactions.

isc_info_creation_date
Returns the date and time when the database was [re]created.
To decode the returned value, call  isc_vax_integer  twice to extract (first) the date and (second) the time portions of the ISC_TIMESTAMP. Then, use  isc_decode_timestamp()  as usual.

When I try to connect FB 2.1 I get an error abaout isc_vax_integer ,
may bee this changes cause the problem with FB 2.1 on Firebird20 driver ?!

Best regards Patyi.

Posted: 12.05.2008, 20:32
by magnomp
Is someone working on supporting fb 2.1 already?