-
Bug
-
Resolution: Done
-
Medium
-
None
-
None
-
None
An application that attempts to send a route table to itself seems to be exciting a bug in RMR's symbol table logic.
From Bengi's mail:
- Application use rmr to send messages and send itself a routing table update message in some situations to its rmr 4561 port.
- Application also send messages via rmr wormhole feature before or after sending normal rmr messages or rmr route update messages.
The two GDB stack traces provided:
#0 0x00005584c4bc8b18 in putin (table=0x7f8500000018, name=0x5584c5357a30 "172.16.132.103:4572 [xxx.com]", class=1, val=0x5584c5346f00) at /root/ric/libs/ext/rmr/src/rmr/common/src/symtab.c:188 #1 0x00005584c4bc92b5 in rmr_sym_put (vtable=0x7f8500000018, name=0x5584c5357a30 "172.16.132.103:4572 [xxx.com]", class=1, val=0x5584c5346f00) at /root/ric/libs/ext/rmr/src/rmr/common/src/symtab.c:413 #2 0x00005584c4bc14b2 in rt_ensure_ep (rt=0x7f854c0962a0, ep_name=0x5584c5357a30 "172.16.132.103:4572 [xxx.com]") at /root/ric/libs/ext/rmr/src/rmr/common/src/rt_generic_static.c:1259 #3 0x00005584c4bc5aab in rmr_wh_open (vctx=0x5584c532a540, target=0x5584c5357a30 "172.16.132.103:4572 [xxx.com]") at /root/ric/libs/ext/rmr/src/rmr/common/src/wormholes.c:211 #4 0x00005584c4ac7887 in RmrManager::sendViaWormHole (this=0x5584c5329758, data=0x5584c538ce30 "meid_map | start\nmme_ar | e2term-service:4564 | 28601-5\nmeid_map | end | 1 |\n", len=78, msgCtx=...) at src/app/RmrManager.cpp:152
#0 0x000055a4bbcd5b18 in putin (table=0x0, name=0x55a4bdd9fe90 "e2term-service:4564", class=1, val=0x7fed180011b0) at /root/ric/libs/ext/rmr/src/rmr/common/src/symtab.c:188 #1 0x000055a4bbcd62b5 in rmr_sym_put (vtable=0x0, name=0x55a4bdd9fe90 "e2term-service:4564", class=1, val=0x7fed180011b0) at /root/ric/libs/ext/rmr/src/rmr/common/src/symtab.c:413 #2 0x000055a4bbcce4b2 in rt_ensure_ep (rt=0x7fed2007e420, ep_name=0x55a4bdd9fe90 "e2term-service:4564") at /root/ric/libs/ext/rmr/src/rmr/common/src/rt_generic_static.c:1259 #3 0x000055a4bbcd2aab in rmr_wh_open (vctx=0x55a4bdd73540, target=0x55a4bdd9fe90 "e2term-service:4564") at /root/ric/libs/ext/rmr/src/rmr/common/src/wormholes.c:211 #4 0x000055a4bbbd4887 in RmrManager::sendViaWormHole (this=0x55a4bdd72758, data=0x55a4bdda4180 "updatert | start\nmse| 129 | 256 | 172.16.132.86:4572 [xxx.com]\nmse| 131 | 256 | 172.16.132.86:4572 [xxx.com]\nmse| 132 | 256 | 172.16.132.86:4572 [xxx.com]\nupdatert | end | 3 \n", len=146, msgCtx=...) at src/app/RmrManager.cpp:152
# | Subject | Branch | Project | Status | CR | V |
---|---|---|---|---|---|---|
4994,4 | Fix potential race in route table load | master | ric-plt/lib/rmr | Status: MERGED | +2 | +1 |
5057,3 | Correct table clear bug in route table ready | master | ric-plt/lib/rmr | Status: MERGED | +2 | +1 |
5090,2 | Correct memory leak in the RTE cleanup | master | ric-plt/lib/rmr | Status: MERGED | +2 | +1 |