Page 1 of 1

Problem check version Firebird connect with ZeosLib 8.0.0

Posted: 30.07.2024, 19:08
by huelbert
When I connect to a Firebird 2.5 Windows server, ZeosLib 8.0.0 can check the Firebird version, but when I use the same connection to a Firebird 2.5 Linux Ubuntu server, the error message "function not found" appears.
While debugging, I found that ZeosLib 8.0.0 identifies the Firebird version using the SQL below:

Code: Select all

select rdb$get_context('SYSTEM', 'ENGINE_VERSION') from rdb$database
Is there any property to avoid this problem?

Re: Problem check version Firebird connect with ZeosLib 8.0.0

Posted: 31.07.2024, 08:21
by marsupilami
Hello huelbert,

I just checked the release notes. The RDB$GET_CONTEXT function is documented to be available starting with Firebird 2.0. The ENGINE_VERSION context variable is documented to be available since Firebird version 2.1. So the code has to work in principle. Also there is no option to switch off that part of the zeos code.

So I see two possibilities:
  • The firbird installation on Ubuntu is broken in some way. In this case the installation should be repaired.
  • The database on Ubuntu has a legacy ODS version for some reason. You might want to look at http://www.firebirdfaq.org/faq117/ on how to check the ODS version.
With best regards,

Jan

Re: Problem check version Firebird connect with ZeosLib 8.0.0

Posted: 01.08.2024, 07:27
by marsupilami
Hello huelbert,

I changed the code in Subversion to not use the SQL anymore. If you want to give it a try, get a copy of the 8.0-patches branch.

With best regards,

Jan

Re: Problem check version Firebird connect with ZeosLib 8.0.0

Posted: 18.08.2024, 09:13
by tandon69
thank you so much.