[ 
https://issues.apache.org/jira/browse/HAWQ-1494?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

fangpei updated HAWQ-1494:
--------------------------
    Description: 
When I execute a specific sql, a serious bug can happen every time. (Hawq 
version is 2.2.0.0)

BUG information:
FATAL: Unexpect internal error (setref.c:298)
DETAIL: AssertImply failed("!(!var->varattno >= 0) || (var->varattno <= 
list_length(colNames) + list_length(rte- >pseudocols)))", File: "setrefs.c", 
Line: 298)
HINT:  Process 239600 will wait for gp_debug_linger=120 seconds before 
termination.
Note that its locks and other resources will not be released  until then.
server closed the connection unexpectedly
        This probably means the server terminated abnormally
         before or while processing the request.
The connection to the server was lost. Attemping reset: Succeeded.

I use GDB to debug, the GDB information is the same every time. The information 
is: 
Loaded symbols for /lib64/libnss_files.so.2
0x00000032dd40eb5c in recv 0 from /lib64/libpthread.so.0
(gdb) b setrefs.c:298
Breakpoint 1 at 0x846063: file setrefs.c, line 298.
(gdb) c 
Continuing.
Breakpoint 1, set_plan_references_output_asserts (glob=0x7fe96fbccab0, 
plan=0x7fe8e930adb8) at setrefs.c:298
298 set ref s .c:没有那个文件或目录.
(gdb) c 1923
Will ignore next 1922 crossings of breakpoint 1. Continuing.
Breakpoint 1, set_plan_references_output_asserts (glob=0x7fe96fbccab0, 
plan=0x7fe869c70340) at setrefs.c:298
298 in setrefs.c
(gdb) p list_length(allVars) 
$1 = 1422
(gdb) p var->varno 
$2 = 65001
(gdb) p list_length(glob->finalrtable) 
$3 = 66515
(gdb) p var->varattno 
$4 = 31
(gdb) p list_length(colNames) 
$5 = 30
(gdb) p list_length(rte->pseudocols) 
$6 = 0

the SQL sentence is long, Occupies the entire screen, total 45 lines. the SQL 
sentence contain "nested select", many "union all", "where", "or", "and", and 
also have "group by" and "having".

I try to "explain this SQL" to get the execution plan, but it report the same 
error, and then can not get the execution plan.
I also try to "set optimizer=off" and retry the SQL sentence, but the same 
error happen, and "show optimizer" the optimizer  is "on" (automatically set 
"on").

  was:
When I execute a specific sql, a serious bug can happen every time. (Hawq 
version is 2.2.0.0)

BUG information:
FATAL: Unexpect internal error (setref.c:298)
DETAIL: AssertImply failed("!(!var->varattno >= 0) || (var->varattno <= 
list_length(colNames) + list_length(rte- >pseudocols)))", File: "setrefs.c", 
Line: 298)
HINT:  Process 239600 will wait for gp_debug_linger=120 seconds before 
termination.
Note that its locks and other resources will not be released  until then.
server closed the connection unexpectedly
        This probably means the server terminated abnormally
         before or while processing the request.
The connection to the server was lost. Attemping reset: Succeeded.

I use GDB to debug, the GDB information is the same every time. The information 
is: 
Loaded symbols for /lib64/libnss_files.so.2
0x00000032dd40eb5c in recv 0 from /lib64/libpthread.so.0
(gdb) b setrefs.c:298
Breakpoint 1 at 0x846063: file setrefs.c, line 298.
(gdb) c 
Continuing.
Breakpoint 1, set_plan_references_output_asserts (glob=0x7fe96fbccab0, 
plan=0x7fe8e930adb8) at setrefs.c:298
298 set ref s .c:没有那个文件或目录.
(gdb) c 1923
Will ignore next 1922 crossings of breakpoint 1. Continuing.
Breakpoint 1, set_plan_referencesj〇utput_asserts (glob=0x7fe96fbccab0, 
plan=0x7fe869c70340) at setrefs.c:298
298 in setrefs.c
(gdb) p list_length(allVars) 
$1 = 1422
(gdb) p var->varno 
$2 = 65001
(gdb) p list_length(glob->finalrtable) 
$3 = 66515
(gdb) p var->varattno 
$4 = 31
(gdb) p list_length(colNames) 
$5 = 30
(gdb) p list_length(rte->pseudocols) 
$6 = 0

the SQL sentence is long, Occupies the entire screen, total 45 lines. the SQL 
sentence contain "nested select", many "union all", "where", "or", "and", and 
also have "group by" and "having".

I try to "explain this SQL" to get the execution plan, but it report the same 
error, and then can not get the execution plan.
I also try to "set optimizer=off" and retry the SQL sentence, but the same 
error happen, and "show optimizer" the optimizer  is "on" (automatically set 
"on").


> The bug can appear every time when I execute a specific sql:  Unexpect 
> internal error (setref.c:298), server closed the connection unexpectedly
> -----------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HAWQ-1494
>                 URL: https://issues.apache.org/jira/browse/HAWQ-1494
>             Project: Apache HAWQ
>          Issue Type: Bug
>          Components: Core
>            Reporter: fangpei
>            Assignee: Radar Lei
>             Fix For: 2.2.0.0-incubating
>
>
> When I execute a specific sql, a serious bug can happen every time. (Hawq 
> version is 2.2.0.0)
> BUG information:
> FATAL: Unexpect internal error (setref.c:298)
> DETAIL: AssertImply failed("!(!var->varattno >= 0) || (var->varattno <= 
> list_length(colNames) + list_length(rte- >pseudocols)))", File: "setrefs.c", 
> Line: 298)
> HINT:  Process 239600 will wait for gp_debug_linger=120 seconds before 
> termination.
> Note that its locks and other resources will not be released  until then.
> server closed the connection unexpectedly
>         This probably means the server terminated abnormally
>          before or while processing the request.
> The connection to the server was lost. Attemping reset: Succeeded.
> I use GDB to debug, the GDB information is the same every time. The 
> information is: 
> Loaded symbols for /lib64/libnss_files.so.2
> 0x00000032dd40eb5c in recv 0 from /lib64/libpthread.so.0
> (gdb) b setrefs.c:298
> Breakpoint 1 at 0x846063: file setrefs.c, line 298.
> (gdb) c 
> Continuing.
> Breakpoint 1, set_plan_references_output_asserts (glob=0x7fe96fbccab0, 
> plan=0x7fe8e930adb8) at setrefs.c:298
> 298 set ref s .c:没有那个文件或目录.
> (gdb) c 1923
> Will ignore next 1922 crossings of breakpoint 1. Continuing.
> Breakpoint 1, set_plan_references_output_asserts (glob=0x7fe96fbccab0, 
> plan=0x7fe869c70340) at setrefs.c:298
> 298 in setrefs.c
> (gdb) p list_length(allVars) 
> $1 = 1422
> (gdb) p var->varno 
> $2 = 65001
> (gdb) p list_length(glob->finalrtable) 
> $3 = 66515
> (gdb) p var->varattno 
> $4 = 31
> (gdb) p list_length(colNames) 
> $5 = 30
> (gdb) p list_length(rte->pseudocols) 
> $6 = 0
> the SQL sentence is long, Occupies the entire screen, total 45 lines. the SQL 
> sentence contain "nested select", many "union all", "where", "or", "and", and 
> also have "group by" and "having".
> I try to "explain this SQL" to get the execution plan, but it report the same 
> error, and then can not get the execution plan.
> I also try to "set optimizer=off" and retry the SQL sentence, but the same 
> error happen, and "show optimizer" the optimizer  is "on" (automatically set 
> "on").



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to