@@ -9,13 +9,6 @@ mkdir -p config
99export FLUX_SCHED_MODULE=none
1010test_under_flux 1 full -o,--config-path=$( pwd) /config
1111
12- get_queue () {
13- queue=$1 &&
14- jobid=$( flux job id $2 ) &&
15- flux dmesg | grep ${queue} | grep ${jobid} | awk ' {print $5}' \
16- | awk -F= ' {print $2}'
17- }
18-
1912test_expect_success ' qmanager: load resource' '
2013 load_resource prune-filters=ALL:core subsystems=containment policy=low
2114'
@@ -34,44 +27,30 @@ test_expect_success 'qmanager: loading qmanager with multiple queues' '
3427 load_qmanager
3528'
3629
30+ get_policy () {
31+ jq -e -r .params.$1 .\" queue-policy\"
32+ }
33+
34+ test_expect_success ' qmanager: all,batch,debug are fcfs queues' '
35+ test $(flux qmanager-params | get_policy all) = "fcfs" &&
36+ test $(flux qmanager-params | get_policy batch) = "fcfs" &&
37+ test $(flux qmanager-params | get_policy debug) = "fcfs"
38+ '
39+
3740test_expect_success ' qmanager: job can be submitted to queue=all' '
38- jobid=$(flux submit -n 1 --queue=all hostname) &&
39- flux job wait-event -t 10 ${jobid} finish &&
40- queue=$(get_queue alloc ${jobid}) &&
41- test ${queue} = all &&
42- queue=$(get_queue free ${jobid}) &&
43- test ${queue} = all &&
44- flux dmesg -C
41+ flux run -n1 --queue=all true
4542'
4643
4744test_expect_success ' qmanager: job can be submitted to queue=batch' '
48- jobid=$(flux submit -n 1 --queue=batch hostname) &&
49- flux job wait-event -t 10 ${jobid} finish &&
50- queue=$(get_queue alloc ${jobid}) &&
51- test ${queue} = batch &&
52- queue=$(get_queue free ${jobid}) &&
53- test ${queue} = batch &&
54- flux dmesg -C
45+ flux run -n1 --queue=batch true
5546'
5647
5748test_expect_success ' qmanager: job can be submitted to queue=debug' '
58- jobid=$(flux submit -n 1 --queue=debug hostname) &&
59- flux job wait-event -t 10 ${jobid} finish &&
60- queue=$(get_queue alloc ${jobid}) &&
61- test ${queue} = debug &&
62- queue=$(get_queue free ${jobid}) &&
63- test ${queue} = debug &&
64- flux dmesg -C
49+ flux run -n1 --queue=debug true
6550'
6651
67- test_expect_success ' qmanager: job enqueued into implicitly default queue' '
68- jobid=$(flux submit -n 1 hostname) &&
69- flux job wait-event -t 10 ${jobid} finish &&
70- queue=$(get_queue alloc ${jobid}) &&
71- test ${queue} = all &&
72- queue=$(get_queue free ${jobid}) &&
73- test ${queue} = all &&
74- flux dmesg -C
52+ test_expect_success ' qmanager: job enqueued into default queue' '
53+ flux run -n1 true
7554'
7655
7756test_expect_success ' reconfigure qmanager with queues with different policies' '
@@ -91,44 +70,26 @@ test_expect_success 'reconfigure qmanager with queues with different policies' '
9170 reload_qmanager
9271'
9372
73+ test_expect_success ' qmanager: queues have expected policies' '
74+ test $(flux qmanager-params | get_policy queue1) = "easy" &&
75+ test $(flux qmanager-params | get_policy queue2) = "hybrid" &&
76+ test $(flux qmanager-params | get_policy queue3) = "fcfs"
77+ '
78+
9479test_expect_success ' qmanager: job can be submitted to queue=queue3 (fcfs)' '
95- jobid=$(flux submit -n 1 --queue=queue3 hostname) &&
96- flux job wait-event -t 10 ${jobid} finish &&
97- queue=$(get_queue alloc ${jobid}) &&
98- test ${queue} = queue3 &&
99- queue=$(get_queue free ${jobid}) &&
100- test ${queue} = queue3 &&
101- flux dmesg -C
80+ flux run -n1 --queue=queue3 true
10281'
10382
10483test_expect_success ' qmanager: job can be submitted to queue=queue2 (hybrid)' '
105- jobid=$(flux submit -n 1 --queue=queue2 hostname) &&
106- flux job wait-event -t 10 ${jobid} finish &&
107- queue=$(get_queue alloc ${jobid}) &&
108- test ${queue} = queue2 &&
109- queue=$(get_queue free ${jobid}) &&
110- test ${queue} = queue2 &&
111- flux dmesg -C
84+ flux run -n1 --queue=queue2 true
11285'
11386
11487test_expect_success ' qmanager: job submitted to queue=queue1 (conservative)' '
115- jobid=$(flux submit -n 1 --queue=queue1 hostname) &&
116- flux job wait-event -t 10 ${jobid} finish &&
117- queue=$(get_queue alloc ${jobid}) &&
118- test ${queue} = queue1 &&
119- queue=$(get_queue free ${jobid}) &&
120- test ${queue} = queue1 &&
121- flux dmesg -C
88+ flux run -n1 --queue=queue1 true
12289'
12390
124- test_expect_success ' qmanager: job enqueued into explicitly default queue' '
125- jobid=$(flux submit -n 1 hostname) &&
126- flux job wait-event -t 10 ${jobid} finish &&
127- queue=$(get_queue alloc ${jobid}) &&
128- test ${queue} = queue3 &&
129- queue=$(get_queue free ${jobid}) &&
130- test ${queue} = queue3 &&
131- flux dmesg -C
91+ test_expect_success ' qmanager: job enqueued into default queue' '
92+ flux run -n1 true
13293'
13394
13495test_expect_success ' qmanager: job is denied when submitted to unknown queue' '
@@ -138,6 +99,7 @@ test_expect_success 'qmanager: job is denied when submitted to unknown queue' '
13899'
139100
140101test_expect_success ' qmanager: incorrect queue policy can be caught' '
102+ flux dmesg -C &&
141103 cat >config/queues.toml <<-EOT &&
142104 [queues.queue1]
143105 [queues.queue2]
@@ -151,6 +113,16 @@ test_expect_success 'qmanager: incorrect queue policy can be caught' '
151113 reload_qmanager &&
152114 flux dmesg | grep "Unknown queuing policy"
153115'
116+ test_expect_success ' qmanager: whee, what happened' '
117+ flux dmesg &&
118+ flux qmanager-params
119+ '
120+
121+ test_expect_success ' qmanager: fcfs was used instead of unknown policy' '
122+ test $(flux qmanager-params | get_policy queue1) = "easy" &&
123+ test $(flux qmanager-params | get_policy queue2) = "fcfs" &&
124+ test $(flux qmanager-params | get_policy queue3) = "fcfs"
125+ '
154126
155127test_expect_success ' unload qmanager and deconfigure queues' '
156128 remove_qmanager &&
0 commit comments