Informix - Problem description
Problem IT28943 | Status: Closed |
PARSING QUERY WITH MANY UNION ALL ON NESTED/RECURSIVE DERIVED TABLES CAN PARSE STATEMENT FOR HOURS, INDEFINITE, WITHOUT YIELD | |
product: | |
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10 | |
Problem description: | |
This problem was reported running IDS 12.10.FC12 on Solaris 64 and I reproduced problem on linux x86_64 as well. While the sqlexec thread is parsing, it is not yielding which can interfere with other threads like the listen thread thereby preventing new connections. Please note APAR 33794303 was opened to handle the parsers performance for this issue while this APAR will handle the fact that the thread was not yielding during the parsing. An example of the pstack on linux x86_64 during the parsing follows: $ rasu pstack 10320 #0 0x0000000000cf62b6 in p_symcmpr () #1 0x0000000000cdb99c in p_locstack () #2 0x0000000000cf627f in p_symfind () #3 0x0000000000cd5be3 in p_smselect () #4 0x0000000000cd690a in p_smunion () #5 0x0000000000cd2fc0 in p_smexpr () #6 0x0000000000cd2ef5 in p_smexpr () #7 0x0000000000cd5d68 in p_smselect () #8 0x0000000000cd690a in p_smunion () #9 0x0000000000cd684c in p_smunion () #10 0x0000000000cd2fc0 in p_smexpr () #11 0x0000000000cd2ef5 in p_smexpr () #12 0x0000000000cd62c4 in p_smselect () #13 0x0000000000cd690a in p_smunion () #14 0x0000000000cd6839 in p_smunion () #15 0x0000000000cd2fc0 in p_smexpr () #16 0x0000000000cd2ef5 in p_smexpr () #17 0x0000000000cd62c4 in p_smselect () #18 0x0000000000cd690a in p_smunion () #19 0x0000000000cd6839 in p_smunion () #20 0x0000000000cd2fc0 in p_smexpr () #21 0x0000000000cd2ef5 in p_smexpr () #22 0x0000000000cd5d68 in p_smselect () #23 0x0000000000cd690a in p_smunion () #24 0x0000000000cd6839 in p_smunion () #25 0x0000000000cd2fc0 in p_smexpr () #26 0x0000000000cd2ef5 in p_smexpr () #27 0x0000000000cd5d68 in p_smselect () #28 0x0000000000cd690a in p_smunion () #29 0x0000000000cd6839 in p_smunion () #30 0x0000000000cd2fc0 in p_smexpr () #31 0x0000000000cd2ef5 in p_smexpr () #32 0x0000000000cd62c4 in p_smselect () #33 0x0000000000cd690a in p_smunion () #34 0x0000000000cd6839 in p_smunion () #35 0x0000000000cd2fc0 in p_smexpr () #36 0x0000000000cd2ef5 in p_smexpr () #37 0x0000000000cd62c4 in p_smselect () #38 0x0000000000cd690a in p_smunion () #39 0x0000000000cd6839 in p_smunion () #40 0x0000000000cd2fc0 in p_smexpr () #41 0x0000000000cd2ef5 in p_smexpr () #42 0x0000000000cd5d68 in p_smselect () #43 0x0000000000cd690a in p_smunion () #44 0x0000000000cd6839 in p_smunion () #45 0x0000000000cd2fc0 in p_smexpr () #46 0x0000000000cd2ef5 in p_smexpr () #47 0x0000000000cd62c4 in p_smselect () #48 0x0000000000cd690a in p_smunion () #49 0x0000000000cd6839 in p_smunion () #50 0x0000000000cd2fc0 in p_smexpr () #51 0x0000000000cd2ef5 in p_smexpr () #52 0x0000000000cd5d68 in p_smselect () #53 0x0000000000cd690a in p_smunion () #54 0x0000000000cd6839 in p_smunion () #55 0x0000000000cd2fc0 in p_smexpr () #56 0x0000000000cd2ef5 in p_smexpr () #57 0x0000000000cd62c4 in p_smselect () #58 0x0000000000cd690a in p_smunion () #59 0x0000000000cd6839 in p_smunion () #60 0x0000000000cd2fc0 in p_smexpr () #61 0x0000000000cd2ef5 in p_smexpr () #62 0x0000000000cd5d68 in p_smselect () #63 0x0000000000cd690a in p_smunion () #64 0x0000000000cd6839 in p_smunion () #65 0x0000000000cd2fc0 in p_smexpr () #66 0x0000000000cd2ef5 in p_smexpr () #67 0x0000000000cd5d68 in p_smselect () #68 0x0000000000cd690a in p_smunion () #69 0x0000000000cd6839 in p_smunion () #70 0x0000000000cd2fc0 in p_smexpr () #71 0x0000000000cd2ef5 in p_smexpr () #72 0x0000000000cd62c4 in p_smselect () #73 0x0000000000cd690a in p_smunion () #74 0x0000000000cd6839 in p_smunion () #75 0x0000000000cd2fc0 in p_smexpr () #76 0x0000000000cd2ef5 in p_smexpr () #77 0x0000000000cd62c4 in p_smselect () #78 0x0000000000cd690a in p_smunion () #79 0x0000000000cd6839 in p_smunion () #80 0x0000000000cd2fc0 in p_smexpr () #81 0x0000000000cd2ef5 in p_smexpr () #82 0x0000000000cd62c4 in p_smselect () #83 0x0000000000cd690a in p_smunion () #84 0x0000000000cd6839 in p_smunion () #85 0x0000000000cd2fc0 in p_smexpr () #86 0x0000000000cd2ef5 in p_smexpr () #87 0x0000000000cd5d68 in p_smselect () #88 0x0000000000cd690a in p_smunion () #89 0x0000000000cd6839 in p_smunion () #90 0x0000000000cd2fc0 in p_smexpr () #91 0x0000000000cd2ef5 in p_smexpr () #92 0x0000000000cd5d68 in p_smselect () #93 0x0000000000cd690a in p_smunion () #94 0x0000000000cd6839 in p_smunion () #95 0x0000000000cd2fc0 in p_smexpr () #96 0x0000000000cd2ef5 in p_smexpr () #97 0x0000000000cd62c4 in p_smselect () #98 0x0000000000cd690a in p_smunion () #99 0x0000000000cd6839 in p_smunion () #100 0x0000000000cd2fc0 in p_smexpr () #101 0x0000000000cd2ef5 in p_smexpr () #102 0x0000000000cd5d68 in p_smselect () #103 0x0000000000cd690a in p_smunion () #104 0x0000000000cd6839 in p_smunion () #105 0x0000000000cd2fc0 in p_smexpr () #106 0x0000000000cd2ef5 in p_smexpr () #107 0x0000000000cd5d68 in p_smselect () #108 0x0000000000cd690a in p_smunion () #109 0x0000000000cd6839 in p_smunion () #110 0x0000000000cd2fc0 in p_smexpr () #111 0x0000000000cd2ef5 in p_smexpr () #112 0x0000000000cd62c4 in p_smselect () #113 0x0000000000cd690a in p_smunion () #114 0x0000000000cd6839 in p_smunion () #115 0x0000000000cd2fc0 in p_smexpr () #116 0x0000000000cd2ef5 in p_smexpr () #117 0x0000000000cd5d68 in p_smselect () #118 0x0000000000cd690a in p_smunion () #119 0x0000000000cd6839 in p_smunion () #120 0x0000000000cd2fc0 in p_smexpr () #121 0x0000000000cd2ef5 in p_smexpr () #122 0x0000000000cd62c4 in p_smselect () #123 0x0000000000cd690a in p_smunion () #124 0x0000000000cd6839 in p_smunion () #125 0x0000000000cd2fc0 in p_smexpr () #126 0x0000000000cd2ef5 in p_smexpr () #127 0x0000000000cd62c4 in p_smselect () #128 0x0000000000cd690a in p_smunion () #129 0x0000000000cd6839 in p_smunion () #130 0x0000000000cd2fc0 in p_smexpr () #131 0x0000000000cd2ef5 in p_smexpr () #132 0x0000000000cd5d68 in p_smselect () #133 0x0000000000cd690a in p_smunion () #134 0x0000000000cd6839 in p_smunion () #135 0x0000000000cd2fc0 in p_smexpr () #136 0x0000000000cd2ef5 in p_smexpr () #137 0x0000000000cd5d68 in p_smselect () #138 0x0000000000cd690a in p_smunion () #139 0x0000000000cd2fe1 in p_smexpr () #140 0x0000000000cd2bfa in p_smexpr () #141 0x0000000000cd5fa6 in p_smselect () #142 0x0000000000cd690a in p_smunion () #143 0x0000000000cd2fe1 in p_smexpr () #144 0x0000000000cd2bfa in p_smexpr () #145 0x0000000000cd2bfa in p_smexpr () #146 0x0000000000cd2bfa in p_smexpr () #147 0x0000000000cd2bfa in p_smexpr () #148 0x0000000000cd5fa6 in p_smselect () #149 0x0000000000cd690a in p_smunion () #150 0x0000000000cd2fc0 in p_smexpr () #151 0x0000000000cd2ef5 in p_smexpr () #152 0x0000000000cd5d68 in p_smselect () #153 0x0000000000cd690a in p_smunion () #154 0x0000000000cd2fc0 in p_smexpr () #155 0x0000000000cd2ef5 in p_smexpr () #156 0x0000000000cd5d68 in p_smselect () #157 0x0000000000cd690a in p_smunion () #158 0x0000000000cd714b in p_smquery () #159 0x0000000000cd944f in p_smstmt () #160 0x0000000000b58e1c in spparse () #161 0x0000000000a30615 in parsecmd () #162 0x0000000000a30cd2 in sqcmd () #163 0x0000000000a3ba5a in sq_cmnd () #164 0x0000000000a3bbb4 in sq_prepare () #165 0x0000000000b0b011 in sqmain () #166 0x000000000154ca1b in spawn_thread () #167 0x0000000001411450 in th_init_initgls () #168 0x0000000001456d88 in startup () #169 0x0000000000000000 in ?? () | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users of IDS prior to 12.10.xC13. * **************************************************************** * PROBLEM DESCRIPTION: * * Parsing query with many union all on derived tables in * * nested / recursive fashion can parse statement for hours, * * indefinite, without yield. * **************************************************************** * RECOMMENDATION: * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 25.04.2019 26.09.2019 26.09.2019 |
Problem solved at the following versions (IBM BugInfos) | |
12.10.xC13 | |
Problem solved according to the fixlist(s) of the following version(s) |