Skip to content

Instantly share code, notes, and snippets.

@mattsta
Last active August 29, 2015 14:00
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mattsta/f27f1856f22fab67dc58 to your computer and use it in GitHub Desktop.
Save mattsta/f27f1856f22fab67dc58 to your computer and use it in GitHub Desktop.
test a redis pathology with hmset
#!/bin/bash
ARGS="-c 10 -n 1"
PATH=~/repos/redis/src
redis-benchmark $ARGS eval '
for i=0,50000 do
local key = string.format("data/%019d/xxxxxxxxxxxxxxxxxx", i)
redis.call("HMSET", key, "AAAAAAAAAAA:current", "AA", "AAAAAAAAAAA:current-time", "Thu May 01 11:08:34 BST 2014", "AAAAAAAAAAA:target", "AA", "AAAAAAAAAAA:target-time", "Thu May 01 11:08:34 BST 2014", "aaaaaaaaaaaaaaaaaaaa:current", "aa", "aaaaaaaaaaaaaaaaaaaa:current-time", "Thu May 01 11:08:34 BST 2014", "aaaaaaaaaaaaaaaaaaaa:target", "aa", "aaaaaaaaaaaaaaaaaaaa:target-time", "Thu May 01 11:08:34 BST 2014", "bbbbb:current", "bbbbbbbbbbbbbbbbbbbbbbbbb", "bbbbb:current-time", "Thu May 01 11:08:34 BST 2014", "bbbbb:target", "bbbbbbbbbbbbbbbbbbbbbbbbb", "bbbbb:target-time", "Thu May 01 11:08:34 BST 2014", "cccccccccccccccccccccc:current", "cc", "cccccccccccccccccccccc:current-time", "Thu May 01 11:08:34 BST 2014", "cccccccccccccccccccccc:target", "cc", "cccccccccccccccccccccc:target-time", "Thu May 01 11:08:34 BST 2014", "dddddddddddddddddd:current", "dddd", "dddddddddddddddddd:current-time", "Thu May 01 11:08:34 BST 2014", "dddddddddddddddddd:target", "dddd", "dddddddddddddddddd:target-time", "Thu May 01 11:08:34 BST 2014", "eeeeeeeeeeeeee:current", "eee", "eeeeeeeeeeeeee:current-time", "Thu May 01 11:08:34 BST 2014", "eeeeeeeeeeeeee:target", "eee", "eeeeeeeeeeeeee:target-time", "Thu May 01 11:08:34 BST 2014", "fffffffffffffffffffff:current", "ff", "fffffffffffffffffffff:current-time", "Thu May 01 11:08:34 BST 2014", "fffffffffffffffffffff:target", "ff", "fffffffffffffffffffff:target-time", "Thu May 01 11:08:34 BST 2014", "ggg:current", "ggg", "ggg:current-time", "Thu May 01 11:08:34 BST 2014", "ggg:target", "ggg", "ggg:target-time", "Thu May 01 11:08:34 BST 2014", "hhhhhhhhhhh:current", "hhhh", "hhhhhhhhhhh:current-time", "Thu May 01 11:08:34 BST 2014", "hhhhhhhhhhh:target", "hhhh", "hhhhhhhhhhh:target-time", "Thu May 01 11:08:34 BST 2014", "iiiiiiiiiiiiiii:current", "ii", "iiiiiiiiiiiiiii:current-time", "Thu May 01 11:08:34 BST 2014", "iiiiiiiiiiiiiii:target", "ii", "iiiiiiiiiiiiiii:target-time", "Thu May 01 11:08:34 BST 2014", "jjjjjjjjjjjjjjjjj:current", "jjjj", "jjjjjjjjjjjjjjjjj:current-time", "Thu May 01 11:08:34 BST 2014", "jjjjjjjjjjjjjjjjj:target", "jjjj", "jjjjjjjjjjjjjjjjj:target-time", "Thu May 01 11:08:34 BST 2014", "kkkkkkkkkkkk:current", "kkk", "kkkkkkkkkkkk:current-time", "Thu May 01 11:08:34 BST 2014", "kkkkkkkkkkkk:target", "kkk", "kkkkkkkkkkkk:target-time", "Thu May 01 11:08:34 BST 2014", "lllllllllllllll:current", "lllll", "lllllllllllllll:current-time", "Thu May 01 11:08:34 BST 2014", "lllllllllllllll:target", "lllll", "lllllllllllllll:target-time", "Thu May 01 11:08:34 BST 2014", "mmmmmmmmmmmmmmmmmm:current", "mmmmmm", "mmmmmmmmmmmmmmmmmm:current-time", "Thu May 01 11:08:34 BST 2014", "mmmmmmmmmmmmmmmmmm:target", "mmmmmm", "mmmmmmmmmmmmmmmmmm:target-time", "Thu May 01 11:08:34 BST 2014", "nnnnnnnn:current", "nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn", "nnnnnnnn:current-time", "Thu May 01 11:08:34 BST 2014", "nnnnnnnn:target", "nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn", "nnnnnnnn:target-time", "Thu May 01 11:08:34 BST 2014", "oooooooooooo:current", "oooooo", "oooooooooooo:current-time", "Thu May 01 11:08:34 BST 2014", "oooooooooooo:target", "oooooo", "oooooooooooo:target-time", "Thu May 01 11:08:34 BST 2014", "pppppppppppppppppp:current", "ppp", "pppppppppppppppppp:current-time", "Thu May 01 11:08:34 BST 2014", "pppppppppppppppppp:target", "ppp", "pppppppppppppppppp:target-time", "Thu May 01 11:08:34 BST 2014", "qqqqqqqq:current", "qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq", "qqqqqqqq:current-time", "Thu May 01 11:08:34 BST 2014", "qqqqqqqq:target", "qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq", "qqqqqqqq:target-time", "Thu May 01 11:08:34 BST 2014", "rrrrrrrrrrrrrrr:current", "rr", "rrrrrrrrrrrrrrr:current-time", "Thu May 01 11:08:34 BST 2014", "rrrrrrrrrrrrrrr:target", "rr", "rrrrrrrrrrrrrrr:target-time", "Thu May 01 11:08:34 BST 2014", "ssssssss:current", "sssssssss", "ssssssss:current-time", "Thu May 01 11:08:34 BST 2014", "ssssssss:target", "sssssssss", "ssssssss:target-time", "Thu May 01 11:08:34 BST 2014", "tttttttttttttttttt:current", "ttttt", "tttttttttttttttttt:current-time", "Thu May 01 11:08:34 BST 2014", "tttttttttttttttttt:target", "ttttt", "tttttttttttttttttt:target-time", "Thu May 01 11:08:34 BST 2014", "uuuuuuuuuuuu:current", "uuuuuuuuuuu", "uuuuuuuuuuuu:current-time", "Thu May 01 11:08:34 BST 2014", "uuuuuuuuuuuu:target", "uuuuuuuuuuu", "uuuuuuuuuuuu:target-time", "Thu May 01 11:08:34 BST 2014", "vvvvvvvvvvvvvvvvvvvv:current", "vv", "vvvvvvvvvvvvvvvvvvvv:current-time", "Thu May 01 11:08:34 BST 2014", "vvvvvvvvvvvvvvvvvvvv:target", "vv", "vvvvvvvvvvvvvvvvvvvv:target-time", "Thu May 01 11:08:34 BST 2014", "wwwwwwwwwwwwwwwwww:current", "ww", "wwwwwwwwwwwwwwwwww:current-time", "Thu May 01 11:08:34 BST 2014", "wwwwwwwwwwwwwwwwww:target", "ww", "wwwwwwwwwwwwwwwwww:target-time", "Thu May 01 11:08:34 BST 2014", "xxxxxxxxxxx:current", "xxxxxxxxx", "xxxxxxxxxxx:current-time", "Thu May 01 11:08:34 BST 2014", "xxxxxxxxxxx:target", "xxxxxxxxx", "xxxxxxxxxxx:target-time", "Thu May 01 11:08:34 BST 2014", "yyyyyyyyyyyy:current", "yyyyyyyyyyyyyy", "yyyyyyyyyyyy:current-time", "Thu May 01 11:08:34 BST 2014", "yyyyyyyyyyyy:target", "yyyyyyyyyyyyyy", "yyyyyyyyyyyy:target-time", "Thu May 01 11:08:34 BST 2014", "zzzzzzzzzzzzzzzzzzzzz:current", "zzzz", "zzzzzzzzzzzzzzzzzzzzz:current-time", "Thu May 01 11:08:34 BST 2014", "zzzzzzzzzzzzzzzzzzzzz:target", "zzzz", "zzzzzzzzzzzzzzzzzzzzz:target-time", "Thu May 01 11:08:34 BST 2014")
end' 0
if [[ $1 == "del" ]]; then
redis-benchmark $ARGS eval '
for i=0,50000 do
local key = string.format("data/%019d/xxxxxxxxxxxxxxxxxx", i)
redis.call("del", key)
end' 0 > /dev/null
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment