[redis]github-91 Report
https://github.com/antirez/redis/issues/91
Memory leak can freeze Redis from accepting new client requests.
Critical
Yes. Error: Error: ERR command not allowed when used memory > 'maxmemory'
at Command.callback (/home/trellis/trellis/node_modules/redis/index.js:774:27)
at RedisClient.return_error (/home/trellis/trellis/node_modules/redis/index.js:382:25)
at RedisReplyParser. (/home/trellis/trellis/node_modules/redis/index.js:78:14)
at RedisReplyParser.emit (events.js:64:17)
at RedisReplyParser.send_error (/home/trellis/trellis/node_modules/redis/lib/parser/javascript.js:265:14)
at RedisReplyParser.execute (/home/trellis/trellis/node_modules/redis/lib/parser/javascript.js:124:22)
at RedisClient.on_data (/home/trellis/trellis/node_modules/redis/index.js:358:27)
at Socket. (/home/trellis/trellis/node_modules/redis/index.js:93:14)
at Socket.emit (events.js:64:17)
at Socket._onReadable (net.js:672:14)
Well, the above msg appears many times.
single client
2.0.4
maxmemory enabled
1. Introduce a network error btw slave & master so it won’t consume the data from master fast enough (disconnect)
2. client keeps writing to the server to produce more data
in this order
yes
Yes
2 (master + slave)
Error log and freeze, also gives you the stack trace.
From the log we know stack trace and the mem usage is big. It also shows:
client_longest_output_list:4490
Indicates the mem consumption might be from the output buffer.
The output buffer has mem leak.
Semantic