stable driver for multithreaded environment (IIS 5.X)

From: "Markus Donath" <md-postgres-donath(at)netapps(dot)de>
To: pgsql-odbc(at)postgresql(dot)org
Subject: stable driver for multithreaded environment (IIS 5.X)
Date: 2003-11-20 13:07:47
Message-ID: bpieav$k8f$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

hello,

i've been making load-tests with Microsoft IIS 5.0 on Windows 2000,
accessing postgresql via the Microsoft "OLEDB over ODBC" Driver using
Postgres ODBC 7.03.0200.
MDAC Version is 2.7 SP1 refresh.
This version seems to have stability problems in a multithreading
environment, same problems occur using version 7.03.0100:

1. the first bytes of column-data are corrupted under heavy load on the
webserver machine
2. after some minutes of testing, the webserver starts blocking threads
because of unhandled MDAC errors.
Here is a stack-dump of one of the blocked threads:

Warning: This thread is blocked by a Message Box
Message Box Text: Runtime Error!

Program: C:\WINNT\system32\dllhost.exe

R6025

- pure virtual function call

Thread Type: MDAC Error being handled. Possible ASP page
Executing Page: R:\INETPUB\XXXX\SHOP\FOLDER.ASP

# ChildEBP RetAddr
00 0202d99c 77e234d6 USER32!NtUserWaitMessage+0xb
01 0202d9d0 77e33f21 USER32!DialogBox2+0x216
02 0202d9f4 77e23fdd USER32!InternalDialogBox+0xd1
03 0202dcac 77e24379 USER32!SoftModalMessageBox+0x752
04 0202ddf4 77e23871 USER32!MessageBoxWorker+0x247
05 0202de4c 77e24104 USER32!MessageBoxExW+0x77
06 0202de7c 77e232a2 USER32!MessageBoxExA+0xa0
07 0202de9c 7800bec3 USER32!MessageBoxA+0x49
08 0202debc 78007e22 MSVCRT!__crtMessageBoxA+0x81
09 0202e09c 78007f87 MSVCRT!_NMSG_WRITE+0x11f
0a 0202e0a4 7800bc7a MSVCRT!_amsg_exit+0x25
0b 0202e0ac 1f33f360 MSVCRT!_purecall+0x7
0c 0202e0b4 1f334aaf msadce!CSingleResult::~CSingleResult+0x27
0d 0202e0bc 1f35244b msadce!CSingleResult::`scalar deleting destructor'+0x8
0e 0202e0e8 1f352518 msadce!CMultipleResults::mrInitFetch+0xb1
0f 0202e11c 1f43fa41 msadce!CMultipleResults::GetResult+0xbd
10 0202e15c 1f43f72c msado15!CConnection::Execute+0x13f
11 0202e318 1f43f5e6 msado15!_ExecuteAsync+0x16e
12 0202e328 1f43f4f9 msado15!ExecuteAsync+0x1f
13 0202e3f0 1f43ef4d msado15!CQuery::Execute+0x9fe
14 0202e498 1f43a33c msado15!CCommand::_Execute+0x147
15 0202e4d8 1f438174 msado15!CXLockContext::~CXLockContext+0x14
16 0202e638 1f4448f7 msado15!CRecordset::Open+0x571
17 0202e69c 779ffe61 msado15!CRecordset::put_CursorLocation+0x93
18 0a96c800 00650073 OLEAUT32!APP_DATA::FreeCachedMem+0x85
WARNING: Frame IP not in any known module. Following frames may be wrong.
19 000008ec 00000000 0x650073

As with all multithreading issues, the server runs fine when not under
stress.

Is there a stable version of this driver available (maybe an older version)
?
Can anybody recommend a commercial driver version ?

thank you,
Markus.

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Simeó Reig 2003-11-20 17:50:17 Re: how can obtain the OID of the last insert ?
Previous Message Hartmut Raschick 2003-11-19 10:55:19 fixes for psqlodbc-07.03.20 part 2 of 2