]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | #include "gtest/gtest.h" |
2 | ||
3 | #include "common/WorkQueue.h" | |
4 | #include "common/ceph_argparse.h" | |
5 | ||
6 | TEST(WorkQueue, StartStop) | |
7 | { | |
8 | ThreadPool tp(g_ceph_context, "foo", "tp_foo", 10, ""); | |
9 | ||
10 | tp.start(); | |
11 | tp.pause(); | |
12 | tp.pause_new(); | |
13 | tp.unpause(); | |
14 | tp.unpause(); | |
15 | tp.drain(); | |
16 | tp.stop(); | |
17 | } | |
18 | ||
19 | TEST(WorkQueue, Resize) | |
20 | { | |
11fdf7f2 | 21 | ThreadPool tp(g_ceph_context, "bar", "tp_bar", 2, "filestore_op_threads"); |
7c673cae FG |
22 | |
23 | tp.start(); | |
24 | ||
25 | sleep(1); | |
26 | ASSERT_EQ(2, tp.get_num_threads()); | |
27 | ||
11fdf7f2 TL |
28 | g_conf().set_val("filestore op threads", "5"); |
29 | g_conf().apply_changes(&cout); | |
7c673cae FG |
30 | sleep(1); |
31 | ASSERT_EQ(5, tp.get_num_threads()); | |
32 | ||
11fdf7f2 TL |
33 | g_conf().set_val("filestore op threads", "3"); |
34 | g_conf().apply_changes(&cout); | |
7c673cae FG |
35 | sleep(1); |
36 | ASSERT_EQ(3, tp.get_num_threads()); | |
37 | ||
11fdf7f2 TL |
38 | g_conf().set_val("filestore op threads", "0"); |
39 | g_conf().apply_changes(&cout); | |
7c673cae FG |
40 | sleep(1); |
41 | ASSERT_EQ(0, tp.get_num_threads()); | |
42 | ||
11fdf7f2 TL |
43 | g_conf().set_val("filestore op threads", "15"); |
44 | g_conf().apply_changes(&cout); | |
7c673cae FG |
45 | sleep(1); |
46 | ASSERT_EQ(15, tp.get_num_threads()); | |
47 | ||
11fdf7f2 TL |
48 | g_conf().set_val("filestore op threads", "-1"); |
49 | g_conf().apply_changes(&cout); | |
7c673cae FG |
50 | sleep(1); |
51 | ASSERT_EQ(15, tp.get_num_threads()); | |
52 | ||
53 | sleep(1); | |
54 | tp.stop(); | |
55 | } |