Subject | Re: [IB-Architect] Thread-safety of gds32.dll |
---|---|
Author | Dmitry Kuzmenko |
Post date | 2000-12-20T13:03:28Z |
Hello, Helen!
Helen Borrie wrote:
several months ago. He stated that gds32.dll is not threadsafe at all.
Also he described local connections mechanism. There were no explanations
about LIBS issues. I think LIBS was created before MIDAS, and nobody in Borland
ever thought about using LIBS with Midas.
all queries in different processes were executing serially, i.e. next query
won't execute until current is finished.
or other Web technology connection must be specified as localhost or servername,
not as local (direct database path without specifying server name and protocol).
only localhost:c:\dir\data.gdb or servername:c:\dir\data.gdb will work and
process parallel queries.
Right two days ago one man asked me about serial query execution with MIDAS
applications. He missed in one app and specified local connection instead localhost:c:\dir...
without specifying localhost or servername. So local connections are Windows-specific.
--
Dmitry Kuzmenko, Epsylon Technologies.
Helen Borrie wrote:
> >It was NEVER thread-safe on a local connection.Don't know. I've got this knowledge from Dmitri Smirnov's article (in interbase@...)
>
> That much was known...I'm trying to get to the bottom of the cause...is the
> shared memory conflict between client library and server the only
> issue? Why should it be so? Do you think it was deliberately made so to
> prevent people from developing middleware using LIBS?
several months ago. He stated that gds32.dll is not threadsafe at all.
Also he described local connections mechanism. There were no explanations
about LIBS issues. I think LIBS was created before MIDAS, and nobody in Borland
ever thought about using LIBS with Midas.
> >And seems itI'm not sure, it must be tested. I remember that in some IB version
> >executes queries serially for different processes.
>
> I'm not sure exactly what you are saying here. (a) all queries within a
> single process are executed serially? or in some processes it executes all
> queries serially and in some processes it doesn't? Do you mean it queues
> up queries and won't execute one until the current one is finished?
all queries in different processes were executing serially, i.e. next query
won't execute until current is finished.
> >uses shared memory for IPC between gds32.dll and interbase.exe.? This is the FAQ (at list in Russia) that using IB with CGI, ISAPI, Perl, Baikonur
>
> Is there any way one can observe/test that?
or other Web technology connection must be specified as localhost or servername,
not as local (direct database path without specifying server name and protocol).
only localhost:c:\dir\data.gdb or servername:c:\dir\data.gdb will work and
process parallel queries.
Right two days ago one man asked me about serial query execution with MIDAS
applications. He missed in one app and specified local connection instead localhost:c:\dir...
> Do you know whether it affects all platforms, or just Windows?I know that there is no local connection in Unix. You can't connect to database
without specifying localhost or servername. So local connections are Windows-specific.
> Is just a Classic problem or does it affect SS as well?I think there is no difference between classic and ss for this issue.
--
Dmitry Kuzmenko, Epsylon Technologies.