hawq-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Radar Lei (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HAWQ-1494) The bug can appear every time when I execute a specific sql: Unexpect internal error (setref.c:298), server closed the connection unexpectedly
Date Tue, 31 Jul 2018 02:39:00 GMT

    [ https://issues.apache.org/jira/browse/HAWQ-1494?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16563054#comment-16563054
] 

Radar Lei commented on HAWQ-1494:
---------------------------------

Reschedule this issue to backlog for proper resolver.

> 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: Yi Jin
>            Priority: Major
>             Fix For: backlog
>
>
> 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 just like :
> SELECT *
> FROM (select t.*,1001 as ttt from AAA t where  ( aaa = '320106000000006235'  or aaa =
'320106000000006236'  or aaa = '320102000000006292'  or aaa = '320106000000006293'  or aaa
= '32010600000006393' ) and (  bbb between '20170601065900' and '20170601175100'  and (ccc
= '2017-06-01' ))  union all  select t.*,1002 as ttt from AAA t where  ( aaa = '320106000000006007'
 or aaa = '320106000000006006' ) and (  bbb between '20170601072900' and '20170601210100'
 and ( ccc = '2017-06-01' ))  union all  select t.*,1003 as ttt from AAA t where  ( aaa =
'320106000000002772' ) and (  bbb between '20170601072900' and '20170601170100'  and ( ccc
= '2017-06-01' ))  union all  select t.*,1004 as ttt from AAA t where  (aaa = '320106000000006115'
 or aaa = '320106000000006116'  or aaa = '320106000000006318'  or aaa = '320106000000006319'
) and (  bbb between '20170601085900' and '20170601163100' and ( ccc = '2017-06-01' ))  union
all  select t.*,1005 as ttt from AAA t where  ( aaa = '320106000000006180' or aaa = '320104000000006385'
) and (  bbb between '20170601205900' and '20170601230100'  and ( ccc = '2017-06-01' )) union
all  select t.*,1006 as ttt from AAA t where  ( aaa = '320102000000006423'  or aaa = '320102000000006255'
 or aaa = '320106000000006258'  or aaa = '320106000000006259' ) and (  bbb between '20170601215900'
and '20170602004900'  and ( ccc = '2017-06-01'  or ccc = '2017-06-02' ))  union all select
t.*,1007 as ttt from AAA t where  ( aaa = '320106000000006175' or aaa = '320106000000006004'
) and (  bbb between '20170602074900' and '20170602182100'  and ( ccc = '2017-06-02'  )) union
all select t.*,1008 as ttt from AAA t where  ( aaa = '320102000000006648' ) and (  bbb between
'20170602132900' and '20170602134600'  and ( ccc = '2017-06-02' ))  union all  select t.*,1009
as ttt from AAA t where  ( aaa = '320106000000002765'  or aaa = '320100000000006282' ) and
(  bbb between '20170602142900' and '20170603175100'  and ( ccc = '2017-06-02'  or ccc = '2017-06-03'
))  union all  select t.*,1010 as ttt from AAA t where  (aaa = '320106000000006060' ) and
(  bbb between '20170602165900' and '20170603034100'  and ( ccc = '2017-06-02'  or ccc = '2017-06-03'
))  union all select t.*,1011 as ttt from AAA t where  ( aaa = '3201060000000062229'  or aaa
= '320106000000006230'  or aaa = '320102000000002783'  or aaa = '320102000000006304' ) and
(  bbb between '20170603192900' and '20170604183100'  and ( ccc = '2017-06-03'  or ccc = '2017-06-04'
))  union all select t.*,1012 as ttt from AAA t where  ( aaa = '320113000000006549' ) and
(  bbb between '20170604071947' and '20170604220100'  and ( ccc = '2017-06-04' ))  union all
select t.*1013 as ttt from AAA t where  ( aaa = '320106000000006061'  or aaa = '320106000000006062'
) and (  bbb between '20170604145900' and '20170604154100'  and ( ccc = '2017-06-04' ))  )
T0 
> WHERE EXISTS (SELECT HHH
>   FROM (SELECT HHH, COUNT(*)
>   FROM (SELECT HHH, ttt, COUNT(*)
>   FROM (select t.*,1001 as ttt from AAA t where  ( aaa = '320106000000006235'  or aaa
= '320106000000006236'  or aaa = '320102000000006292'  or aaa = '320106000000006293'  or aaa
= '320106000000006393' ) and (  bbb between '20170601065900' and '20170601175100'  and ( ccc
= '2017-06-01' ))  union all  select t.*,1002 as ttt from AAA t where  ( aaa = '320106000000006007'
 or aaa = '320106000000006006' ) and (  bbb between '20170601072900' and '20170601170100'
 and ( ccc = '2017-06-01' ))  union all  select t.*,1003 as ttt from AAA t where  ( aaa =
'320106000000002772' ) and ( bbb between '20170601072900' and '20170601170100'  and ( ccc
= '2017-06-01' ))  union all  select t.*,1004 as ttt from AAA t where  (aaa = '320106000000006115'
 or aaa = '320106000000006116'  or aaa = '320106000000006318'  or aaa = '320106000000006319'
) and (  bbb between '20170601085900' and '20170601163100'  and ( ccc = '2017-06-01' ))  union
all select t.*,1005 as ttt from AAA t where  ( aaa = '320106000000006180'  or aaa = '320104000000006385'
) and (  bbb between '20170601205900' and '20170601230100'  and ( ccc = '2017-06-01' ))  union
all  select t.*,1006 as ttt from AAA t where  ( aaa = '320102000000006423'  or aaa = '320102000000006255'
 or aaa = '320106000000006258'  or aaa = '320106000000006259' ) and (  bbb between '20170601215900'
and '20170602004900'  and ( ccc = '2017-06-01'  or ccc = '2017-06-02' ))  union all  select
t.*,1007 as ttt from AAA t where  ( aaa = '320106000000006175'  or aaa = '320106000000006004'
) and (  bbb between '20170602074900' and '20170602182100'  and ( ccc = '2017-06-02' ))  union
all select t.*,1008 as ttt from AAA t where  ( aaa = '320102000000006648' ) and (  bbb between
'20170602132900' and '20170602134600'  and ( ccc = '2017-06-02' ))  union all  select t.*,1009
as ttt from AAA t where  ( aaa = '320106000000002765'  or aaa = '320100000000006282' ) and
(  bbb between '20170602142900' and '20170603175100'  and ( ccc = '2017-06-02'  or ccc = '2017-06-03'
))  union all select t.*,1010 as ttt from AAA t where  ( aaa = '320106000000006060' ) and
(  bbb between '20170602165900' and '20170603034100'  and ( ccc = '2017-06-02'  or ccc = '2017-06-03'
))  union all select t.*,1011 as ttt from AAA t where  ( aaa = '320106000000006229'  or aaa
= '320106000000006230'  or aaa = '320102000000002783'  or aaa = '320102000000006304' ) and
(  bbb between '20170603192900' and '20170604183100'  and ( ccc = '2017-06-03'  or ccc = '2017-06-04'
))  union all  select t.*,1012 as ttt from AAA t where  ( aaa = '32011300000000549' ) and
(  bbb between '20170604071947' and '20170604220100'  and ( ccc = '2017-06-04' ))  union all
select t.*,1013 as ttt from AAA t where  ( aaa = '210106000000006061'  or aaa = '320106000000006062'
) and (  bbb between '20170604145900' and '20170604154100'  and ( ccc = '2017-06-04' ))  )
T1
>  GROUP BY HHH, ttt) T2
>  GROUP BY HHH
>  HAVING COUNT(*) >= 8) T3
>  WHERE T0.HHH = T3.HHH);
> 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
(v7.6.3#76005)

Mime
View raw message