Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Turbo码先生
redis
提交
dacb69ed
R
redis
项目概览
Turbo码先生
/
redis
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
redis
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
dacb69ed
编写于
8月 24, 2016
作者:
A
antirez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
RDB AOF preamble: test it in the aofrw unit.
上级
764cc69e
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
52 addition
and
49 deletion
+52
-49
tests/unit/aofrw.tcl
tests/unit/aofrw.tcl
+52
-49
未找到文件。
tests/unit/aofrw.tcl
浏览文件 @
dacb69ed
...
...
@@ -4,60 +4,63 @@ start_server {tags {"aofrw"}} {
r config set auto-aof-rewrite-percentage 0
;
# Disable auto-rewrite.
waitForBgrewriteaof r
test
{
AOF rewrite during write load
}
{
# Start a write load for 10 seconds
set master
[
srv 0 client
]
set master_host
[
srv 0 host
]
set master_port
[
srv 0 port
]
set load_handle0
[
start_write_load $master_host $master_port 10
]
set load_handle1
[
start_write_load $master_host $master_port 10
]
set load_handle2
[
start_write_load $master_host $master_port 10
]
set load_handle3
[
start_write_load $master_host $master_port 10
]
set load_handle4
[
start_write_load $master_host $master_port 10
]
# Make sure the instance is really receiving data
wait_for_condition 50 100
{
[
r dbsize
]
> 0
}
else
{
fail
"No write load detected."
}
foreach rdbpre
{
yes no
}
{
r config set aof-use-rdb-preamble $rdbpre
test
"AOF rewrite during write load: RDB preamble=
$rdbpre
"
{
# Start a write load for 10 seconds
set master
[
srv 0 client
]
set master_host
[
srv 0 host
]
set master_port
[
srv 0 port
]
set load_handle0
[
start_write_load $master_host $master_port 10
]
set load_handle1
[
start_write_load $master_host $master_port 10
]
set load_handle2
[
start_write_load $master_host $master_port 10
]
set load_handle3
[
start_write_load $master_host $master_port 10
]
set load_handle4
[
start_write_load $master_host $master_port 10
]
# Make sure the instance is really receiving data
wait_for_condition 50 100
{
[
r dbsize
]
> 0
}
else
{
fail
"No write load detected."
}
# After 3 seconds, start a rewrite, while the write load is still
# active.
after 3000
r bgrewriteaof
waitForBgrewriteaof r
# After 3 seconds, start a rewrite, while the write load is still
# active.
after 3000
r bgrewriteaof
waitForBgrewriteaof r
# Let it run a bit more so that we'll append some data to the new
# AOF.
after 1000
# Stop the processes generating the load if they are still active
stop_write_load $load_handle0
stop_write_load $load_handle1
stop_write_load $load_handle2
stop_write_load $load_handle3
stop_write_load $load_handle4
# Make sure that we remain the only connected client.
# This step is needed to make sure there are no pending writes
# that will be processed between the two
"debug digest"
calls.
wait_for_condition 50 100
{
[
llength
[
split
[
string trim
[
r client list
]]
"
\n
"
]]
== 1
}
else
{
puts
[
r client list
]
fail
"Clients generating loads are not disconnecting"
}
# Let it run a bit more so that we'll append some data to the new
# AOF.
after 1000
# Get the data set digest
set d1
[
r debug digest
]
# Stop the processes generating the load if they are still active
stop_write_load $load_handle0
stop_write_load $load_handle1
stop_write_load $load_handle2
stop_write_load $load_handle3
stop_write_load $load_handle4
# Load the AOF
r debug loadaof
set d2
[
r debug digest
]
# Make sure that we remain the only connected client.
# This step is needed to make sure there are no pending writes
# that will be processed between the two
"debug digest"
calls.
wait_for_condition 50 100
{
[
llength
[
split
[
string trim
[
r client list
]]
"
\n
"
]]
== 1
}
else
{
puts
[
r client list
]
fail
"Clients generating loads are not disconnecting"
# Make sure they are the same
assert
{
$d1
eq $d2
}
}
# Get the data set digest
set d1
[
r debug digest
]
# Load the AOF
r debug loadaof
set d2
[
r debug digest
]
# Make sure they are the same
assert
{
$d1
eq $d2
}
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录