Skip to content

Memory leak in iproto override triggers #10477

@nshy

Description

@nshy

Found by ASAN.

Reproducer:

local net = require('net.box')
local trigger = require('trigger')

box.cfg{listen = 3301}
box.schema.user.grant('guest', 'super', nil, nil, {if_not_exists = true})
trigger.set('box.iproto.override.eval', '1', function()
    return false
end)

local conn = net.connect(3301)
local s = string.rep('x', 512 * 1024)
while true do
    conn:eval('return 1', {s})
end

The script is killed by OOM killer after few dozens of seconds after start:

авг 26 17:55:03 mynote kernel: Out of memory: Killed process 94131 (tarantool) total-vm:20579488kB, anon-rss:10399196kB, file-rss:600kB, shmem-rss:0kB, UID:1000 pgtables:39060kB oom_score_adj:0

Introduced in 3.1.0-entrypoint-193-g6980007160.

Metadata

Metadata

Assignees

Labels

3.2Target is 3.2 and all newer release/master branchesbugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions