Subject Re: [ib-support] Re: Concurrent API calls into gds32 cause lock
Author SD@topol.udm.net
On 1 Apr 2002 at 16:37, nitaligavino wrote:

>Well, that is if I use the connection string of "c:\test.gdb". I
>found that if I use the TCP/IP connection string
>of "localhost:c:\test.gdb" both threads will then attach and appear
>to work. My concern, is this correct?

Yes, local connection uses Memory Mapped Files and that is the
source of the lock.

> Is it safe to simply change the connection string and forget
> about this issue?

Yes, changing of the connection string is the main way to get rid
of a multithread lock.

>Unfortunately, I have not found any documentation on what the
>possible connection strings are and what the really are doing.

If I'm not mistaken, connection strings are described in Embedded
SQL Guide and have this format: [<name of host><sign of protocol>]
<local path>. <Sign of protocol> is none for local connection, ':'
for TCP/IP, '@' for IPX/SPX and '\' for NetBEUI. Besides, NetBEUI
host should be preceded with '\\'. Examples:

D:\path\Database.gdb -- local connect (MMF)
host:D:\path\Database.gdb -- remote connect (TCP/IP)
host@D:\path\Database.gdb -- remote connect (IPX/SPX)
\\host\D:\Path\Database.gdb -- remote connect (NetBEUI)

Don't confuse NetBEUI connection string and UNC. Never share your
database on a file-level.

SY, Dimitry Sibiryakov.