mxosrvr core in SRVR::FETCH2bulk when columns in particular order
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Trafodion |
Fix Released
|
Critical
|
Tharak Capirala |
Bug Description
First select crashes, but the second one works:
Select exec_start_utc_ts, exec_end_utc_ts, query_id, query_text from “_REPOS_
Select query_text, exec_start_utc_ts, exec_end_utc_ts, query_id from “_REPOS_
This system had about 350 rows in metric_query_table. It worked ok on a system where metric_query_table had 40 rows.
Stack trace:
#0 0x00007ffff4829625 in raise () from /lib64/libc.so.6
#1 0x00007ffff482ad8d in abort () from /lib64/libc.so.6
#2 0x00007ffff4867537 in __libc_message () from /lib64/libc.so.6
#3 0x00007ffff486ce66 in malloc_printerr () from /lib64/libc.so.6
#4 0x00007ffff486f9b3 in _int_free () from /lib64/libc.so.6
#5 0x00007ffff685f53b in SRVR::FETCH2bulk (pSrvrStmt=
#6 0x00007ffff688dbda in odbc_SQLSrvr_
returnCode=
sqlAsyncEna
outputDataV
at srvrothers.cpp:5815
#7 0x00000000004b6907 in odbc_SQLSrvr_
operation_
maxRowCnt=100, maxRowLen=0) at SrvrConnect.
#8 0x000000000048b852 in SQLFETCH_IOMessage (objtag_=0xed8160, call_id_=0xed81b8, operation_id=3009)
at Interface/
#9 0x0000000000493d7e in DISPATCH_
at Interface/
#10 0x0000000000433872 in BUILD_TCPIP_REQUEST (pnode=0xed8160) at ../Common/
#11 0x000000000043420d in PROCESS_
#12 0x00000000004623f6 in CNSKListenerSrv
#13 0x00007ffff45dd290 in sb_thread_sthr_disp (pp_arg=0xed74d0) at threadl.cpp:253
#14 0x00007ffff43a99d1 in start_thread () from /lib64/
#15 0x00007ffff48df8fd in clone () from /lib64/libc.so.6
According to Arvind, crash happens in this part of the code (sqlinterface.cpp):
//Changes due to cursor issue
if (pSrvrStmt-
{
if (pSrvrStmt-
{
new BYTE[pSrvrStmt-
Changed in trafodion: | |
status: | New → In Progress |
assignee: | nobody → Tharak Capirala (capirala-tharaknath) |
tags: |
added: sql-exe removed: connectivity-mxosrvr |
Changed in trafodion: | |
assignee: | nobody → Tharak Capirala (capirala-tharaknath) |
Vito did more testing and found more repo table queries that cause mxosrvr cores:
select EXEC_START_ UTC_TS, QUERY_ID, USER_NAME, QUERY_TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, USER_NAME, EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, ROLE_NAME, QUERY_TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, ROLE_NAME, EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, SESSION_ ID,QUERY_ TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, SESSION_ ID,EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ ID,QUERY_ TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ ID,EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ TYPE,QUERY_ TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ TYPE,EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ SUBTYPE, QUERY_TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, STATEMENT_ SUBTYPE, EXPLAIN_ PLAN from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, QUERY_STATUS, QUERY_TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE; UTC_TS, QUERY_ID, QUERY_SUB_ STATUS, QUERY_TEXT from TRAFODION. "_REPOS_ ".METRIC_ QUERY_TABLE;
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_
select EXEC_START_