Subject Re: [firebird-support] Embeded version & ISAPI
Author Helen Borrie
At 12:46 PM 1/04/2004 +0300, you wrote:
>unfortunately it didn't work. gives
>Internal Server Error 500
>
>----------------------------------------------------------------------------
>----
>Exception: EIBInterBaseError
>Message: unavailable database
>
>
>my code is like this;
>
>void __fastcall TMainW::WebModuleCreate(TObject *Sender)
>{
> if (DB==NULL)
> {
> DB=new TIBDatabase(NULL);
> DB->LoginPrompt=false;
> DB->DatabaseName="D:\\Progs\\ToDoList\\Data\\TODOLIST.FDB";
> DB->Params->Clear();
> DB->Params->Add("user_name=sysdba");
> DB->Params->Add("password=masterkey");
> DB->Open();
> }
>}

Do you understand that one and only one connection can be made to a
database using the embedded server? Once the first instance of the
"client-part" has a connection, no other instances can get on.

This is the problem with your isapi module: each instance of the module is
connecting through its own instance of the "client-part" but can't access
the database because another instance already has an exclusive lock on
it. Because you can't unload an isapi module, the lock on the database
file just stays there until you reboot the machine.

/heLen