Subject Re: [IBO] linux connection issue.
Author Helen Borrie
At 04:06 AM 3/09/2007, you wrote:
>Our database works great in windows.
>
>When our IT guy learned that firebird works in linux, he offered to set us
>up a linux server
>
>As this was something clients had been asking him for.
>
>Unfortunately when we try to connect via IB_Objects TIB_Connection
>We are getting the following message(s)
>
>ISC ERROR CODE:335544721
>
>ISC ERROR MESSAGE:
>
>Unable to complete network request to host "<hostnamedeleted>".
>
>Failed to locate host machine.
>
>Undefined service opt/visiondb/VISION.FDB/tcp.
>------ end of message text --------
>
>Are we setting up firebird on linux wrong or configuring IBObjects wrong or
>something else.

Undefined service opt/visiondb/VISION.FDB/tcp looks wrong. On the
Linux host, the service should be defined (in /etc/services) as gds_db/tcp.....

>The settings we are using (host IP:/pathtodb/dbname.fdb works in IB Expert
>but not in our application.

.....so, at the time of connection, the Firebird server is running
and IBExpert is passing a correct connection string.


>We are using tcp/ip, on port 3050, and the log file for the database says we
>are connecting but we get this message at the application side.

Do you mean firebird.log? This is the log file for the server, not
the database.


>Please point me in the right direction.

First, make sure that the Firebird server is running on the host machine.

The most likely problem on the application is that your DFM file has
some garbage property settings that you need to get rid of, e.g.
completely CLEAR the Params property of your IB_Connection and make
sure that the Database property does not contain a path of any
sort. Set it to some simple name such as "conn". Use the Server,
Path and Protocol properties of the IB_Connection.

Check all of your data access objects to make sure the IB_Connection
property is properly set. Nil out any DatabaseName references.

For the cleanest cross-platform interoperability you should use a
Firebird alias in the Path property of your IB_Connection. Then, to
swap platforms, you won't need to hard-code anything in the app.

As a reality check, because you haven't done this before, might I
suggest that you create a simple, completely new application to test
the connection. Follow the advice above strictly, including the use
of a simple moniker in the Database property.

Helen