From: | Eric Hill <Eric(dot)Hill(at)jmp(dot)com> |
---|---|
To: | PostgreSQL mailing lists <pgsql-odbc(at)postgresql(dot)org> |
Subject: | SQLFreeHandle() takes eons when running debug |
Date: | 2014-12-05 18:56:06 |
Message-ID: | e1a53e420a8d44d7b32b1bc476cf499a@MERCMBX41R.na.SAS.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Hey,
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?
Thanks,
Eric
From | Date | Subject | |
---|---|---|---|
Next Message | Nikhil Deshpande | 2014-12-05 19:01:50 | Re: SQLFreeHandle() takes eons when running debug |
Previous Message | Nathanael Terrien | 2014-12-05 13:09:22 | Re: Exponential processing time for multiple SELECT FOR UPDATE / UPDATE in a single transaction with PostgreSQL 9.x ? |