diff --git a/CHANGELOG.md b/CHANGELOG.md index 6da3951..6580849 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unreleased - Add logging to unified file (gh-324). +- Add memory leak detection during server termination (gh-349). ## 1.0.1 diff --git a/luatest/server.lua b/luatest/server.lua index 5506871..702cc13 100644 --- a/luatest/server.lua +++ b/luatest/server.lua @@ -459,6 +459,17 @@ function Server:stop() ) ) end + if self.process.output_beautifier.stderr:find('LeakSanitizer') then + error( + ('Memory leak during process termination (alias: %s, workdir: %s, pid: %s)\n%s') + :format( + self.alias, + fio.basename(self.workdir), + self.process.pid, + self.process.output_beautifier.stderr + ) + ) + end log.debug('Killed server process PID ' .. self.process.pid) self.process = nil end