Process hangs

Process hangs

Postby fulvion » Mon 05 Oct 2009 12:42

Hi to all,
i'm facing a curious problem creating a simple Win32 service application.
this service just has (at least 'till now) one thread which creates a TSQLConnection object at runtime.
The connection is set to use dbxoda40.dll. If i open the connection and try to stop the service (or close the hosting test application) then the application process hangs and i have to kill it via task manager.
If i don't try to open the connection then the application closes normally.

Environment:
RAD Studio 2009
dboda V. 4.40.16
Vista business 32bit
Oracle 9i or 10g

Code: Select all
sqlConnection=new TSQLConnection(NULL);
sqlConnection->ConnectionName="DevartOracle";
sqlConnection->DriverName="DevartOracle";
sqlConnection->GetDriverFunc="getSQLDriverORA";
sqlConnection->LibraryName="dbexpoda40.dll";
sqlConnection->VendorLib="oci.dll";
sqlConnection->LoginPrompt=false;

sqlConnection->Params->Clear();
sqlConnection->Params->Add("Database="+_Database);
sqlConnection->Params->Add("User_Name="+_Username);
sqlConnection->Params->Add("Password="+_Password);

sqlConnection->Open();
sqlConnection->Close();

if i comment out "sqlConnection->Open()" everything works fine... but i need it!


Second question (sorry for asking it here). i do i download the latest version of dbxoda? the account you gave me allows me to download only version 4.40.16 and not the 4.50.XX
Since i bought it one month ago i think i can upgrade it for a year, right?

thanks in advance
Fulvio[/code]
fulvion
 
Posts: 18
Joined: Fri 06 Oct 2006 09:47

Postby Plash » Wed 07 Oct 2009 08:14

Please check whether your application hangs on call to TSQLConnection.Close. If no, what is the code where the application hangs. Enable 'Use Debug DCUs' in Project Options / Compiler. Then debug your application and find the exact line where your application hangs.

I have forwarded your question about download to our sales team.
Plash
Devart Team
 
Posts: 2844
Joined: Wed 10 May 2006 07:09

Postby fulvion » Wed 07 Oct 2009 14:44

Hi Plash and thanks for your answer.
i have to apologize since i thought that the problem was related to your driver.
i don't know why but i just made another test (i was sure to have already tried it) using DBExpress predefined oracle driver and it behaves the same.

Even following your advice i end up in a CPU window with an endless call to an anonymous sub-routine. It seems that it's waiting for a thread to end. A thread's WaitFor cycle that never ends.
The strange thing is that this only happen if i open the connection. So i think that this issue should belong to the dbexpress layer (i think).
Anyway i'll investigate it in other ways.

thanks again for your support (i received the account infos to download version 4.50.18).

regards,
Fulvio
fulvion
 
Posts: 18
Joined: Fri 06 Oct 2006 09:47


Return to dbExpress driver for Oracle