Collectives™ on Stack Overflow
Find centralized, trusted content and collaborate around the technologies you use most.
Learn more about Collectives
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Learn more about Teams
I'm having intermittent trouble with an OPENQUERY statement that pulls data through ODBC from a Progress database into SQL 2005. Most of the time it works, but every couple weeks, one of the many calls using this method bombs with a SQL Stack dump, shown below. We've run exhaustive hardware checks and also DB integrity checks, and have come up empty.
=====================================================================
BugCheck Dump
This file is generated by Microsoft SQL Server
version 9.00.4035.00
upon detection of fatal unexpected error. Please return this file,
the query or program that produced the bugcheck, the database and
the error log, and any other pertinent information with a Service Request.
Computer type is AT/AT COMPATIBLE.
Bios Version is HP - 2
Current time is 22:25:51 07/07/09.
8 Intel x86 level 6, 2400 Mhz processor (s).
Windows NT 5.2 Build 3790 CSD Service Pack 1.
Memory
MemoryLoad = 86%
Total Physical = 32764 MB
Available Physical = 4310 MB
Total Page File = 34447 MB
Available Page File = 6117 MB
Total Virtual = 2047 MB
Available Virtual = 155 MB
***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\SQLDump0032.txt
SqlDumpExceptionHandler: Process 122 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is
terminating this process.
Exception Address = 6D4A01D2 Module(pgoe1023+000801D2)
Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION
Access Violation occurred reading address 00000010
Input Buffer 510 bytes -
--Import all data from QAD into local tables truncate table
qad.pi_mstr insert into qad.pi_mstr select 'QADDB', * from openquery(QA
DPWPSPRES,'select * from pub.pi_mstr WITH (NOLOCK)') insert into qad.pi
_mstr select 'Paragon', * from openquery(QADPWPSPPARA,'select * from pub
.pi_mstr WITH (NOLOCK)') --Copy desired subset of data over into the
end result table truncate table PriceListMasterCustomer insert into Pr
iceListMasterCustomer (PriceListID, CustomerPriceList, PriceListDescript
ion, CustomerAnalysisCode, ItemAnalysisCode, StartDate, ExpireDate, ModD
ate, CombType, AmountType, BreakCategory, PI_UM,
Curr, QtyType, CostSet, ConfgDisc, CustomerType, PartType, UserID, Disc
Sequence, ListPrice, MinNet, MaxQty, Manual) SELECT pi_list_id, pi_
list, pi_desc, pi_cs_code, pi_part_code, pi_start, pi_expire, pi_mod_dat
e, pi_comb_type, pi_amt_type, pi_break_cat, pi_um, pi_curr, pi_qty_type,
pi_cost_set, pi_confg_disc, pi_cs_type, pi_part
_type, pi_userid, pi_disc_seq, pi_list_price, pi_min_net, pi_max_qty, pi
_manual FROM qad.pi_mstr where dbname = 'QADDB'
MODULE BASE END SIZE
sqlservr 01000000 02C1FFFF 01c20000
ntdll 7C800000 7C8C1FFF 000c2000
kernel32 77E40000 77F42FFF 00103000
MSVCR80 78130000 781CAFFF 0009b000
msvcrt 77BA0000 77BF9FFF 0005a000
MSVCP80 7C420000 7C4A6FFF 00087000
ADVAPI32 77F50000 77FEBFFF 0009c000
RPCRT4 77C50000 77CEEFFF 0009f000
sqlos 344D0000 344D4FFF 00005000
Secur32 76F50000 76F62FFF 00013000
USERENV 76920000 769E3FFF 000c4000
USER32 77380000 77411FFF 00092000
GDI32 77C00000 77C48FFF 00049000
WINMM 76AA0000 76ACCFFF 0002d000
opends60 333E0000 333E6FFF 00007000
NETAPI32 71C40000 71C97FFF 00058000
IMM32 76290000 762ACFFF 0001d000
psapi 76B70000 76B7AFFF 0000b000
instapi 48060000 48069FFF 0000a000
sqlevn70 4F610000 4F7B8FFF 001a9000
rsaenh 68000000 6802EFFF 0002f000
AUTHZ 76C40000 76C53FFF 00014000
MSCOREE 79000000 79045FFF 00046000
ole32 62A40000 62B73FFF 00134000
msv1_0 76C90000 76CB6FFF 00027000
iphlpapi 76CF0000 76D09FFF 0001a000
WS2_32 71C00000 71C16FFF 00017000
WS2HELP 71BF0000 71BF7FFF 00008000
kerberos 62BF0000 62C47FFF 00058000
cryptdll 766E0000 766EBFFF 0000c000
MSASN1 76190000 761A1FFF 00012000
schannel 76750000 76776FFF 00027000
CRYPT32 761B0000 76242FFF 00093000
COMRES 62CB0000 62D75FFF 000c6000
XOLEHLP 62D80000 62D85FFF 00006000
MSDTCPRX 62D90000 62E07FFF 00078000
OLEAUT32 77D00000 77D8BFFF 0008c000
msvcp60 780C0000 78120FFF 00061000
MTXCLU 62E10000 62E28FFF 00019000
VERSION 77B90000 77B97FFF 00008000
WSOCK32 71BB0000 71BB8FFF 00009000
CLUSAPI 62E30000 62E41FFF 00012000
RESUTILS 62E50000 62E62FFF 00013000
mswsock 71B20000 71B60FFF 00041000
DNSAPI 76ED0000 76EF8FFF 00029000
winrnr 62EC0000 62EC6FFF 00007000
WLDAP32 76F10000 76F3DFFF 0002e000
rasadhlp 62EF0000 62EF7FFF 00008000
security 632C0000 632C3FFF 00004000
msfte 63C20000 63E78FFF 00259000
dbghelp 63E90000 63FA4FFF 00115000
WINTRUST 76BB0000 76BDAFFF 0002b000
imagehlp 76C10000 76C38FFF 00029000
dssenh 68100000 68123FFF 00024000
hnetcfg 641F0000 64248FFF 00059000
wshtcpip 71AE0000 71AE7FFF 00008000
NTMARTA 77E00000 77E21FFF 00022000
SAMLIB 64310000 6431EFFF 0000f000
ntdsapi 766F0000 76704FFF 00015000
xpsp2res 643A0000 64664FFF 002c5000
CLBCatQ 64670000 646F2FFF 00083000
sqlncli 64700000 64926FFF 00227000
COMCTL32 64930000 649C6FFF 00097000
comdlg32 00750000 00799FFF 0004a000
SHELL32 7C8D0000 7D0D3FFF 00804000
SHLWAPI 77DA0000 77DF1FFF 00052000
comctl32 649D0000 64AD2FFF 00103000
SQLNCLIR 64C00000 64C32FFF 00033000
msftepxy 64DD0000 64DE4FFF 00015000
xpsqlbot 667D0000 667D5FFF 00006000
xpstar90 667F0000 6683AFFF 0004b000
SQLSCM90 66850000 66858FFF 00009000
ODBC32 66870000 668ACFFF 0003d000
BatchParser90 668B0000 668CEFFF 0001f000
ATL80 7C630000 7C64AFFF 0001b000
odbcint 66BA0000 66BB6FFF 00017000
xpstar90 66BC0000 66BE5FFF 00026000
xplog70 66BF0000 66BFBFFF 0000c000
xplog70 66C10000 66C12FFF 00003000
msxmlsql 78800000 788D4FFF 000d5000
msxml2 67C50000 67CFEFFF 000af000
msxml3 69730000 6984AFFF 0011b000
oledb32 6A250000 6A2C8FFF 00079000
MSDART 698D0000 698E9FFF 0001a000
OLEDB32R 6B7F0000 6B800FFF 00011000
msdasql 6D1F0000 6D23CFFF 0004d000
MSDATL3 6D240000 6D254FFF 00015000
MSDASQLR 68150000 68153FFF 00004000
comsvcs 6D260000 6D398FFF 00139000
pgoe1023 6D420000 6D50EFFF 000ef000
pgicu23 6D510000 6E108FFF 00bf9000
odbccp32 6E120000 6E139FFF 0001a000
pgoe1023R 63BB0000 63BC5FFF 00016000
dbghelp 70380000 70494FFF 00115000
Edi: 6E8382E4: 00000000 00000000 00000000 00000031 00000CE3 00000001
Esi: 6E7E2364: 6D4D7DCC 6E18AFD0 6E88ED38 00000000 00000000 00000000
Eax: 00000042:
Ebx: 00000000:
Ecx: 00000000:
Edx: 00000023:
Eip: 6D4A01D2: 8B10518B 4E8B9A04 C1835004 09ACE808 C3830000 745E3B01
Ebp: 00000000:
SegCs: 0000001B:
EFlags: 00010206: 006E0069 0000005C 0055004E 0042004D 00520045 004F005F
Esp: 6872F0AC: 6E7E2364 6E80265C 6E18AFD0 00000000 6872F0FC 00000000
SegSs: 00000023:
Short Stack Dump
6D4A01D2 Module(pgoe1023+000801D2)
PSS @0x39449328
CSession @0x39448278
m_spid = 122 m_cRef = 12 m_rgcRefType[0] = 1
m_rgcRefType[1] = 1 m_rgcRefType[2] = 9 m_rgcRefType[3] = 1
m_rgcRefType[4] = 0 m_rgcRefType[5] = 0 m_pmo = 0x39448040
m_pstackBhfPool = 0x00000000 m_dwLoginFlags = 0x83e0 m_fBackground = 0
m_fClientRequestConnReset = 0 m_fUserProc = -1 m_fConnReset = 0
m_fIsConnReset = 0 m_fInLogin = 0 m_fAuditLoginSent = 1
m_fAuditLoginFailedSent = 0 m_fReplRelease = 0 m_fKill = 0
m_ulLoginStamp = 7684188 m_eclClient = 5 m_protType = 6
m_hHttpToken = FFFFFFFF
m_pV7LoginRec
00000000: 48010000 03000a73 401f0000 00000006 740b0000 †H......s@.......t...
00000014: 00000000 e0830000 00000000 00000000 5e000d00 †................^...
00000028: 00000000 00000000 78001c00 b0000d00 ca000000 †........x...........
0000003C: ca001c00 02010000 02010500 001cc493 53260c01 †................S&..
00000050: 3c004801 00004801 00000000 0000†††††††††††††††<.H...H.......
CPhysicalConnection @0x39448188
m_pPhyConn->m_pmo = 0x39448040 m_pPhyConn->m_pNetConn = 0x394487B0 m_pPhyConn->m_pConnList = 0x39448260
m_pPhyConn->m_pSess = 0x39448278 m_pPhyConn->m_fTracked = -1 m_pPhyConn->m_cbPacketsize = 8000
m_pPhyConn->m_fMars = 0 m_pPhyConn->m_fKill = 0
CBatch @0x39448AB8
m_pSess = 0x39448278 m_pConn = 0x39448A18 m_cRef = 3
m_rgcRefType[0] = 1 m_rgcRefType[1] = 1 m_rgcRefType[2] = 1
m_rgcRefType[3] = 0 m_rgcRefType[4] = 0 m_pTask = 0x008C86B8
EXCEPT (null) @0x6872D680
exc_number = 0 exc_severity = 0 exc_func = 0x024231C0
Task @0x008C86B8
CPU Ticks used (ms) = 309469 Task State = 2
WAITINFO_INTERNAL: WaitResource = 0x00000000 WAITINFO_INTERNAL: WaitType = 0x0
WAITINFO_INTERNAL: WaitSpinlock = 0x00000000
WAITINFO_EXTERNAL: WaitResource = 0x00000000 WAITINFO_EXTERNAL: WaitType = 0x40006D
WAITINFO_EXTERNAL: WaitSpinlock = 0x00000000 SchedulerId = 0x1
ThreadId = 0x1b08 m_state = 0 m_eAbortSev = 0
EC @0x39449330
spid = 122 ecid = 0 ec_stat = 0x0
ec_stat2 = 0x0 ec_atomic = 0x0 __fSubProc = 1
ec_dbccContext = 0x00000000 __pSETLS = 0x39448A58 __pSEParams = 0x39448CF8
__pDbLocks = 0x39449818
SEInternalTLS @0x39448A58
m_flags = 0 m_TLSstatus = 3 m_owningTask = 0x008C86B8
m_activeHeapDatasetList = 0x39448A58 m_activeIndexDatasetList = 0x39448A60
SEParams @0x39448CF8
m_lockTimeout = -1 m_isoLevel = 4096 m_logDontReplicate = 0
m_neverReplicate = 0 m_XactWorkspace = 0x416CA2D0 m_pSessionLocks = 0x39449A28
m_pDbLocks = 0x39449818 m_execStats = 0x52133778 m_pAllocFileLimit = 0x00000000
–
Is it possible that your input is hitting some kind of lock in the source database and it's crashing the import process? I know it's a longshot, and I would expect ODBC to fail more gracefully if it encounters something like that, but the fact that it's intermittant would suggest that it's something like this. What other processes run in the neighborhood of the schedule for this one? Are there any other potential conflicts?
I'm not knowledgable about Progress, but there seem to be some complaints online that the ODBC driver isn't graceful at all when there's a problem, so it could be something simple that's causing this error. Is there a way to enable any sort of logging so that you don't have rely on what SQL reports the error as, but can use some kind of output from the ODBC driver itself?
–
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.