Re: SQLFreeHandle() takes eons when running debug
От | Nikhil Deshpande |
---|---|
Тема | Re: SQLFreeHandle() takes eons when running debug |
Дата | |
Msg-id | 5482011E.4050800@vmware.com обсуждение исходный текст |
Ответ на | SQLFreeHandle() takes eons when running debug (Eric Hill <Eric.Hill@jmp.com>) |
Ответы |
Re: SQLFreeHandle() takes eons when running debug
|
Список | pgsql-odbc |
On 12/5/14 10:56 AM, Eric Hill wrote: > Not sure how this could be the PostgreSQL ODBC driver’s fault, but when > I run a debug build of my application, calls to SQLFreeHandle() to free > a statement can have for quite a long time (we’re talking a minute or > two) before proceeding. This is Windows, 64-bit Unicode, version > 9.03.03 of the PG ODBC driver. The call stack looks like this when paused: > > ntdll.dll!RtlCompareMemoryUlong() + 0x10 bytes > > ntdll.dll!RtlpFreeHeap() + 0x113f bytes > > ntdll.dll!RtlFreeHeap() + 0x1df bytes > > ntdll.dll!RtlDebugFreeHeap() + 0x23f bytes > > ntdll.dll!RtlpFreeHeap() + 0x7d5b7 bytes > > ntdll.dll!RtlFreeHeap() + 0x1df bytes > > msvcr100.dll!free() + 0x1c bytes > > psqlodbc35w.dll!00007ff97bc7c827() > > [Frames below may be incorrect and/or missing, no > symbols loaded for psqlodbc35w.dll] > > psqlodbc35w.dll!00007ff97bc7656b() > > psqlodbc35w.dll!00007ff97bc76044() > > psqlodbc35w.dll!00007ff97bc761c7() > > psqlodbc35w.dll!00007ff97bc88781() > > psqlodbc35w.dll!00007ff97bc66bda() > > odbc32.dll!FreeStmt() + 0x2c5 bytes > > odbc32.dll!SQLFreeHandle() + 0x2a0 bytes > > > Jmp.exe!DBContext::freeStmt(void * & > hstmt=0x000000001f032030) Line 1644 + 0x14 bytes C++ > > Running a release build, no such delay. We don’t see anything like this > for SQL Server, Oracle, DB2, Teradata, or MySQL ODBC drivers. Anyone > run into this before that can suggest a fix or workaround? Perhaps this might be relevant (setting _NO_DEBUG_HEAP=1 env var to skip heap validation): http://stackoverflow.com/a/18753164 Thanks, Nikhil
В списке pgsql-odbc по дате отправления: