Subject | Re: [firebird-support] Re: Client gets "I/O error for file {non-shared dir on server}\any.fdb" |
---|---|
Author | Helen Borrie |
Post date | 2005-03-31T13:02:21Z |
At 02:31 PM 31/03/2005 +0200, Daniel Albuschat wrote:
is *not* local.
database MUST be on physical disk space that is controlled by the same host
machine that hosts the FB server.
between the two is that one is the remote path for a client using the
TCP/IP transport protocol, whereas the other is the remote path for a
client using the Named Pipes transport protocol. Both are absolute path
locations on a server that is remote (physically or logically) from the
connecting client.
open a connection (whether local or remote) using a path that is
inconsistent with the path that was used by the first client when it
connected. The part of the path that "matters" here is the path as seen
locally by the server machine. Typically, a "good" connection uses the
correct format
C:\Program Files\Foo.fdb
while the connection that is disallowed uses
C:Program Files\Foo.fdb
(notice the missing backslash after C: -- this is allowed by Windows and
forbidden by Firebird if the database file was already opened using the
correct string.)
./heLen
>\\servername\C:\Program Files\Foo.fdb is a *local* path for FB,No, it is a remote path for a Named Pipes client attaching to a server that
is *not* local.
>thusNo. A FB server cannot open a database over a network connection. The
>it will use the locally running firebird server to open a database
>over a network
>connection (which FB is not even aware of, because it's "hidden" by
>the filesystem).
database MUST be on physical disk space that is controlled by the same host
machine that hosts the FB server.
>But I thought you couldn't "share" you Program Files dir?You don't share directories that contain database files.
>servername:C:\Program Files\Foo.fdb is a remote database.Yes. The same as \\servername\C:\Program Files\Foo.fdb. The difference
between the two is that one is the remote path for a client using the
TCP/IP transport protocol, whereas the other is the remote path for a
client using the Named Pipes transport protocol. Both are absolute path
locations on a server that is remote (physically or logically) from the
connecting client.
>The FB clientThat is correct, both for Named Pipes and for TCP/IP.
>library will connect to the FB server running on the machine "servername"
>via TCP/IP, and this FB server there will open the (from the server's point
>of view) local file C:\Program Files\Foo.fdb.
>Ther error description sounds more like some domain/OS user issues, though.The error description exactly describes what happens when a client tries to
open a connection (whether local or remote) using a path that is
inconsistent with the path that was used by the first client when it
connected. The part of the path that "matters" here is the path as seen
locally by the server machine. Typically, a "good" connection uses the
correct format
C:\Program Files\Foo.fdb
while the connection that is disallowed uses
C:Program Files\Foo.fdb
(notice the missing backslash after C: -- this is allowed by Windows and
forbidden by Firebird if the database file was already opened using the
correct string.)
./heLen