-
Notifications
You must be signed in to change notification settings - Fork 403
Labels
3.2Target is 3.2 and all newer release/master branchesTarget is 3.2 and all newer release/master branchesbugSomething isn't workingSomething isn't working
Description
Bug description
There is an issue in logger that can cause stack overflow due to recursive call of say_default function. This occurs when the following conditions are met:
- logger type is
syslog - log level is set to
debug - logger lost connection and failed to reconnect
With debug log level logger tries to log re-connection failure itself and thus enter the loop. One can track the route of calls with below stacktrace:
frame 8 -- inner call of
say_default
frame 9 -- re-connection failure insyslog_connect_remote
...
frame 59174 -- inner call ofsay_default
frame 59175 -- re-connection failure insyslog_connect_remote
...
frame 59180 -- outer call ofsay_default
frame 59181 -- initial error to be logged
#3 0x0000558297f914db in syslog_connect_remote (server_address=0x5582c7fbc050 "10.78.229.5:514")
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:569
#4 0x0000558297f91db9 in log_syslog_connect (log=0x55829ae39140 <log_std.lto_priv>)
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:608
#5 write_to_syslog (total=111, log=0x55829ae39140 <log_std.lto_priv>) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1155
#6 log_vsay (log=0x55829ae39140 <log_std.lto_priv>, level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=line@entry=585, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i", ap=0x7f9ec40011b0) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1385
#7 0x0000558297f91e3f in say_internal (level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=line@entry=585, error=error@entry=0x0,
format=0x5582989ce3c5 "%s at %s:%i", ap=0x7f9ec40011b0) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1058
#8 0x0000558297f9207a in say_default (level=7, filename=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=585, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i") at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1087
#9 0x0000558297f917b2 in syslog_connect_remote (server_address=<optimized out>)
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:585
#10 0x0000558297f91db9 in log_syslog_connect (log=0x55829ae39140 <log_std.lto_priv>)
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:608
#11 write_to_syslog (total=111, log=0x55829ae39140 <log_std.lto_priv>) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1155
#12 log_vsay (log=0x55829ae39140 <log_std.lto_priv>, level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=line@entry=585, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i", ap=0x7f9ec4001500) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1385
#13 0x0000558297f91e3f in say_internal (level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=line@entry=585, error=error@entry=0x0,
format=0x5582989ce3c5 "%s at %s:%i", ap=0x7f9ec4001500) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1058
#14 0x0000558297f9207a in say_default (level=7, filename=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=585, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i") at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1087
.
.
.
#59174 0x0000558297f9207a in say_default (level=7, filename=0x5582989d3fb8 "./tarantool/src/lib/core/say.c", line=585, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i") at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1087
#59175 0x0000558297f917b2 in syslog_connect_remote (server_address=<optimized out>)
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:585
#59176 0x0000558297f91db9 in log_syslog_connect (log=0x55829ae39140 <log_std.lto_priv>)
at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:608
#59177 write_to_syslog (total=98, log=0x55829ae39140 <log_std.lto_priv>) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1155
#59178 log_vsay (log=0x55829ae39140 <log_std.lto_priv>, level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989ce5f4 "./src/lib/core/ssl.c", line=line@entry=359, error=0x0, format=0x5582989ce3c5 "%s at %s:%i",
ap=0x7f9f113f37f0) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1385
#59179 0x0000558297f91e3f in say_internal (level=level@entry=7, check_level=check_level@entry=true, module=module@entry=0x0,
filename=filename@entry=0x5582989ce5f4 "./src/lib/core/ssl.c", line=line@entry=359, error=error@entry=0x0,
format=0x5582989ce3c5 "%s at %s:%i", ap=0x7f9f113f37f0) at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1058
#59180 0x0000558297f9207a in say_default (level=7, filename=0x5582989ce5f4 "./src/lib/core/ssl.c", line=359, error=0x0,
format=0x5582989ce3c5 "%s at %s:%i") at /__w/sdk/sdk/tarantool-ee-3.2/tarantool/src/lib/core/say.c:1087
#59181 0x0000558297f6e9e2 in ssl_iostream_read (io=0x7f9f10442008, buf=<optimized out>, count=16336)
at /__w/sdk/sdk/tarantool-ee-3.2/src/lib/core/ssl.c:359
- OS: Any
- OS Version: Any
- Architecture: Any
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
3.2Target is 3.2 and all newer release/master branchesTarget is 3.2 and all newer release/master branchesbugSomething isn't workingSomething isn't working