Revert "log: free resources while event loop is running"
This reverts commit 0c3f9b37. If log_destroy and log_boot use the same fd (STDERR_FILENO), say() called after say_logger_free() will write to a closed fd. What's worse, the fd may be reused, in which case say() will write to a completely unrelated file or socket (maybe a data file!). This is what happened with flightrec - flightrec finalization info message was written to an xlog file. Let's move say_logger_free() back to where it belongs - after other subsystem has been finalized. Reopens #4450 Needed for https://github.com/tarantool/tarantool-ee/issues/223 NO_DOC=bug fix NO_TEST=revert NO_CHANGELOG=unreleased
Showing
- changelogs/unreleased/gh-4450-logger-sigsegv.md 0 additions, 4 deletionschangelogs/unreleased/gh-4450-logger-sigsegv.md
- src/lib/core/say.c 2 additions, 15 deletionssrc/lib/core/say.c
- src/main.cc 1 addition, 1 deletionsrc/main.cc
- test/app-tap/gh-4450-log-rotate-exit.test.lua 0 additions, 46 deletionstest/app-tap/gh-4450-log-rotate-exit.test.lua
- test/app-tap/suite.ini 1 addition, 1 deletiontest/app-tap/suite.ini
Loading
Please register or sign in to comment