controller crash in OpServerProxy.cc : reply->type != 6
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R2.20 |
Won't Fix
|
High
|
Anish Mehta | |||
R2.20.x |
Fix Committed
|
High
|
Anish Mehta | |||
R2.21.x |
Fix Committed
|
High
|
Anish Mehta | |||
R2.22.x |
Fix Committed
|
High
|
Anish Mehta | |||
R3.0 |
Fix Committed
|
High
|
Anish Mehta | |||
Trunk |
Fix Committed
|
High
|
Anish Mehta |
Bug Description
2.21.1 #15.
core file is in 10.84.5.
in traffic test ( high throughput/cps ) contrail-controller crash is seen with following backtrace.
(gdb) bt
#0 0x00007fb137625cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/
#1 0x00007fb1376290d8 in __GI_abort () at abort.c:89
#2 0x00007fb13761eb86 in __assert_fail_base (
fmt=
assertion=
file=
function=
#3 0x00007fb13761ec32 in __GI___assert_fail (assertion=0x76b92c "reply->type != 6",
file=0x76ba00 "controller/
function=
#4 0x000000000052dbe7 in OpServerProxy:
this=<optimized out>, c=<optimized out>, r=<optimized out>, privdata=<optimized out>)
at controller/
#5 0x00000000004dad3a in operator() (a2=0x0, a1=0xe14e60, a0=0xcffcd0, this=0x7fff6f59
at /usr/include/
#6 RedisAsyncConne
at controller/
#7 0x000000000074c853 in __redisRunCallback (cb=0x7fff6f59d6f0, cb=0x7fff6f59d6f0,
reply=
#8 redisProcessCal
#9 0x000000000074dc79 in redisBoostClien
at build/third_
---Type <return> to continue, or q <return> to quit---
#10 0x000000000074e344 in call<boost:
b1=<synthetic pointer>, u=..., this=<optimized out>)
at /usr/include/
#11 operator(
at /usr/include/
#12 operator(
this=<optimized out>) at /usr/include/
#13 operator(
this=<optimized out>) at /usr/include/
#14 operator() (this=<optimized out>) at /usr/include/
#15 asio_handler_
at /usr/include/
#16 invoke<
at /usr/include/
#17 boost::
at /usr/include/
#18 0x000000000058d37f in complete (bytes_
---Type <return> to continue, or q <return> to quit---
at /usr/include/
#19 boost::
base=0xcfefc0, ec=..., bytes_transferr
at /usr/include/
#20 0x0000000000562777 in complete (bytes_
at /usr/include/
#21 do_run_one (ec=..., this_thread=..., lock=..., this=0xce3540)
at /usr/include/
#22 boost::
at /usr/include/
#23 0x000000000057fa58 in run (this=0xccda00, ec=...)
at /usr/include/
#24 EventManager::Run (this=0xccda00) at controller/
#25 0x00000000004218cb in main (argc=<optimized out>, argv=<optimized out>)
at controller/
(gdb)
Changed in juniperopenstack: | |
milestone: | none → r2.23 |
no longer affects: | juniperopenstack |
description: | updated |
information type: | Proprietary → Public |
From the code, this is when this assert can happen:
// If redis returns error for async request, then perhaps it
assert( reply-> type != REDIS_REPLY_ERROR);
// is busy executing a script and it has reached the maximum
// execution time limit.
This timeout for script execution is set to 15 seconds.