(This page was automatically generated by the tools in the opsboy project on 20:25:04 06-Feb-2019 GMT.)

Detailed Test Report for ngx_lua in linux i386

Summary

Commit Testing Time Unexpected
Failures
Expected
Failures
Files Tests Elapsed Time
0605709c 2018-04-22 04:08:09 GMT 8 307 194 20027 4100 sec

LuaJIT

LuaJIT 2.1.0-beta3, commit b982ebb

OpenSSL

LuaJIT 1.1.0h 27 Mar 2018

Compilation Errors

Unexpected Failures

File Name Details
106-timer.t TEST 9: simple at (sleep in the timer callback) - log_by_lua - pattern "(?^:\[lua\] log_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:6[4-9]|7[0-6]))" should match a line in error.log (req 0)
106-timer.t TEST 9: simple at (sleep in the timer callback) - log_by_lua - pattern "(?^:\[lua\] log_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:6[4-9]|7[0-6]))" should match a line in error.log (req 1)
106-timer.t TEST 30: user args - pattern "(?^:\[lua\] content_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:4[4-9]|5[0-6])\d*, context: ngx\.timer)" should match a line in error.log (req 1)
108-timer-safe.t TEST 2: simple at (sleep in the timer callback) - pattern "(?^:\[lua\] content_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:6[4-9]|7[0-6]))" should match a line in error.log (req 0)
108-timer-safe.t TEST 2: simple at (sleep in the timer callback) - pattern "(?^:\[lua\] content_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:6[4-9]|7[0-6]))" should match a line in error.log (req 1)
109-timer-hup.t TEST 7: HUP reload should abort pending timers (fuzz test) - grep_error_log_out (req 1) got: 'lua found 8185 pending timers
'
expected: 'lua found 8191 pending timers
'
Looks like you failed 1 test of 162.
152-timer-every.t TEST 6: memory leak check - response_body - response is expected (repeated req 0, req 0) @@ -1,2 +1,2 @@
registered timer
-growth1 == growth2: true
+growth1 == growth2: false
'
152-timer-every.t TEST 1: simple very - pattern "(?^:\[lua\] content_by_lua\(nginx\.conf:\d+\):\d+: elapsed: 0\.0(?:4[4-9]|5[0-6])\d*, context: ngx\.timer, client: \d+\.\d+\.\d+\.\d+, server: 0\.0\.0\.0:\d+)" should match a line in error.log (req 0)

Expected Failures

File Name Details
023-rewrite/client-abort.t TEST 5: subrequest + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: fail
lua req cleanup
-delete thread 1
+delete thread 2
'
023-rewrite/client-abort.t TEST 23: exec (named location) to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
023-rewrite/client-abort.t TEST 22: exec to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
023-rewrite/client-abort.t TEST 3: sleep + ignore - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
023-rewrite/client-abort.t TEST 19: ngx.req.socket + receive n == content-length + ignore - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
023-rewrite/client-abort.t TEST 17: ngx.req.socket + receive n < content-length + stop - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
023-rewrite/client-abort.t TEST 20: ngx.req.read_body + sleep + stop (log handler still gets called) - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
023-rewrite/client-abort.t TEST 21: exec to lua + ignore - stap output expected @@ -1,6 +1,6 @@
terminate 1: ok
lua req cleanup
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
023-rewrite/on-abort.t TEST 5: ngx.exit(-1) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/on-abort.t TEST 1: ignore the client abort event in the user callback - stap output expected @@ -2,8 +2,8 @@
lua check broken conn
terminate 2: ok
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 4
+terminate 5: ok
+delete thread 6
lua req cleanup
'
023-rewrite/on-abort.t TEST 12: regsiter on_abort callback but no client abortion (uthread) - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 4
lua req cleanup
-delete thread 2
+delete thread 6
'
023-rewrite/on-abort.t TEST 3: ngx.exit(499) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/on-abort.t TEST 7: accessing cosocket in callback - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/on-abort.t TEST 8: ignore the client abort event in the user callback (no check) - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
023-rewrite/on-abort.t TEST 9: regsiter on_abort callback but no client abortion - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
023-rewrite/on-abort.t TEST 10: ignore the client abort event in the user callback (uthread) - stap output expected @@ -1,13 +1,13 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
-delete thread 2
+delete thread 6
terminate 3: ok
-delete thread 3
-terminate 4: ok
delete thread 4
+terminate 7: ok
+delete thread 8
lua req cleanup
'
023-rewrite/on-abort.t TEST 2: abort in the user callback - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/on-abort.t TEST 11: abort in the user callback (uthread) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 6
-delete thread 3
+delete thread 4
'
023-rewrite/on-abort.t TEST 13: regsiter on_abort callback multiple times - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
023-rewrite/on-abort.t TEST 6: ngx.exit(0) with pending subrequest - stap output should match the pattern 'create 2 in 1
lua check broken conn
terminate 2: fail
terminate 1: ok
delete thread 3
delete thread 4
terminate 5: ok
delete thread 6
lua req cleanup
'
doesn't match '(?^:^create 2 in 1
lua check broken conn
terminate 2: fail
(?:lua check broken conn
)?terminate 1: ok
delete thread 2
delete thread 1
terminate 3: ok
delete thread 3
lua req cleanup
$)'
023-rewrite/on-abort.t TEST 4: ngx.exit(408) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-exec.t TEST 5: exec in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
023-rewrite/uthread-exec.t TEST 1: exec in user thread (entry still pending) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-exec.t TEST 2: exec in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-exec.t TEST 3: exec in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exec.t TEST 4: exec in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
023-rewrite/uthread-exit.t TEST 1: exit in user thread (entry thread is still pending to run) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-exit.t TEST 11: exit in user thread (entry thread is still pending on reqsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 5: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.tcp) - stap output expected @@ -1,13 +1,12 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolver started
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 13: exit in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 3: exit in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
023-rewrite/uthread-exit.t TEST 15: exit in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 7: exit in user thread (entry thread is still pending on tcpsock:connect) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 10: exit in user thread (entry thread is still pending on udpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 12: exit in user thread (entry thread is still pending on ngx.req.read_body) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua req body cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 6: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.udp) - stap output expected @@ -1,13 +1,12 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolver started
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 9: exit in user thread (entry thread is still pending on tcpsock:receiveuntil's iterator) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 8: exit in user thread (entry thread is still pending on tcpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 14: exit in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,12 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 2: exit in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-exit.t TEST 4: exit in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-redirect.t TEST 2: redirect in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
023-rewrite/uthread-redirect.t TEST 1: ngx.redirect() in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
023-rewrite/uthread-spawn.t TEST 11: nested user threads (with I/O) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
023-rewrite/uthread-spawn.t TEST 5: error in user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: fail
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-spawn.t TEST 6: simple user threads doing a single subrequest (entry quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 17: manual time slicing between two user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
023-rewrite/uthread-spawn.t TEST 2: two simple user threads without I/O - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-terminate 2: ok
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
+terminate 2: ok
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
terminate 1: ok
-delete thread 2
delete thread 3
-delete thread 1
+delete thread 5
+delete thread 6
'
023-rewrite/uthread-spawn.t TEST 13: coroutine status of a dead user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-spawn.t TEST 9: two simple user threads doing single subrequests (entry also does a subrequest and quits between) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
'
023-rewrite/uthread-spawn.t TEST 3: simple user thread with sleep - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 1: simple user thread without I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-spawn.t TEST 15: creating user threads in a user coroutine - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
terminate 2: ok
-delete thread 3
+delete thread 4
terminate 1: ok
-delete thread 1
+delete thread 5
'
023-rewrite/uthread-spawn.t TEST 12: coroutine status of a running user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 27: multiple user threads + subrequests returning 204 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
terminate 7: ok
delete thread 8
finalize request /proxy/1: rc:204 c:3 a:0
post subreq: /proxy/1 rc=204, status=204 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
terminate 9: ok
delete thread a
finalize request /proxy/2: rc:204 c:2 a:0
post subreq: /proxy/2 rc=204, status=204 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:200 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
terminate 4: ok
delete thread 4
finalize request /proxy/1: rc:204 c:3 a:0
post subreq: /proxy/1 rc=204, status=204 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
terminate 5: ok
delete thread 5
finalize request /proxy/2: rc:204 c:2 a:0
post subreq: /proxy/2 rc=204, status=204 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:200 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
023-rewrite/uthread-spawn.t TEST 16: manual time slicing between a user thread and the entry thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-spawn.t TEST 19: two user threads flushing at the same time - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
create 4 in 1
spawn user thread 5 in 1
terminate 4: ok
terminate 1: ok
delete thread 3
delete thread 5
delete thread 6
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
create 3 in 1
spawn user thread 3 in 1
terminate 3: ok
terminate 1: ok
delete thread 2
delete thread 3
delete thread 1)$
)'
023-rewrite/uthread-spawn.t TEST 25: multiple user threads + subrequests returning 404 remotely (no wait) - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
create 6 in 1
spawn user thread 7 in 1
create 8 in 1
spawn user thread 9 in 1
create a in 1
spawn user thread b in 1
terminate 1: ok
delete thread c
terminate 2: ok
delete thread 3
terminate 4: ok
delete thread 5
terminate 6: ok
delete thread 7
terminate 8: ok
delete thread 9
terminate 10: ok
delete thread b
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 4 in 1
create 5 in 1
spawn user thread 5 in 1
create 6 in 1
spawn user thread 6 in 1
terminate 1: ok
delete thread 1
(?:terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3
terminate 4: ok
delete thread 4
terminate 5: ok
delete thread 5
terminate 6: ok
delete thread 6|terminate 6: ok
delete thread 6
terminate 5: ok
delete thread 5
terminate 4: ok
delete thread 4
terminate 3: ok
delete thread 3
terminate 2: ok
delete thread 2)$)'
023-rewrite/uthread-spawn.t TEST 22: simple user thread with ngx.req.read_body() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
023-rewrite/uthread-spawn.t TEST 8: simple user threads doing a single subrequest (entry also does a subrequest and quits late) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
023-rewrite/uthread-spawn.t TEST 4: two simple user threads with sleep - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
-terminate 3: ok
-delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 21: user threads + ngx.socket.udp - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 4
terminate 2: ok
delete thread 3
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1)$)'
023-rewrite/uthread-spawn.t TEST 23: simple user thread with ngx.req.socket() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
023-rewrite/uthread-spawn.t TEST 24: multiple user threads + subrequests returning 404 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
finalize request /proxy/1: rc:404 c:3 a:0
post subreq: /proxy/1 rc=404, status=0 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
finalize request /proxy/2: rc:404 c:2 a:0
post subreq: /proxy/2 rc=404, status=0 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:200 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
finalize request /proxy/1: rc:404 c:3 a:0
post subreq: /proxy/1 rc=404, status=0 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
finalize request /proxy/2: rc:404 c:2 a:0
post subreq: /proxy/2 rc=404, status=0 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:200 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
023-rewrite/uthread-spawn.t TEST 7: simple user threads doing a single subrequest (entry also does a subrequest and quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 10: nested user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
-terminate 3: ok
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
+terminate 4: ok
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
+delete thread 5
delete thread 3
-delete thread 2
'
023-rewrite/uthread-spawn.t TEST 20: user threads + ngx.socket.tcp - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 26: multiple user threads + subrequests returning 201 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
terminate 7: ok
delete thread 8
finalize request /proxy/1: rc:0 c:3 a:0
post subreq: /proxy/1 rc=0, status=201 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
terminate 9: ok
delete thread a
finalize request /proxy/2: rc:0 c:2 a:0
post subreq: /proxy/2 rc=0, status=201 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:200 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
terminate 4: ok
delete thread 4
finalize request /proxy/1: rc:0 c:3 a:0
post subreq: /proxy/1 rc=0, status=201 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
terminate 5: ok
delete thread 5
finalize request /proxy/2: rc:0 c:2 a:0
post subreq: /proxy/2 rc=0, status=201 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:200 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
023-rewrite/uthread-spawn.t TEST 18: entry thread and a user thread flushing at the same time - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
023-rewrite/uthread-spawn.t TEST 14: coroutine status of a "normal" user thread - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
terminate 1: ok
-delete thread 1
-terminate 3: ok
+delete thread 5
+terminate 4: ok
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/client-abort.t TEST 23: exec (named location) to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
024-access/client-abort.t TEST 5: subrequest + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: fail
lua req cleanup
-delete thread 1
+delete thread 2
'
024-access/client-abort.t TEST 17: ngx.req.socket + receive n < content-length + stop - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
024-access/client-abort.t TEST 19: ngx.req.socket + receive n == content-length + ignore - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
024-access/client-abort.t TEST 22: exec to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
024-access/client-abort.t TEST 3: sleep + ignore - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
024-access/client-abort.t TEST 21: exec to lua + ignore - stap output expected @@ -1,6 +1,6 @@
terminate 1: ok
lua req cleanup
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
024-access/client-abort.t TEST 20: ngx.req.read_body + sleep + stop (log handler still gets called) - stap output expected @@ -1,5 +1,5 @@
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
024-access/on-abort.t TEST 13: regsiter on_abort callback multiple times - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
024-access/on-abort.t TEST 4: ngx.exit(408) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/on-abort.t TEST 2: abort in the user callback - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/on-abort.t TEST 8: ignore the client abort event in the user callback (no check) - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
024-access/on-abort.t TEST 7: accessing cosocket in callback - stap output should match the pattern 'create 2 in 1
lua check broken conn
terminate 2: ok
lua req cleanup
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^create 2 in 1
lua check broken conn
(?:lua check broken conn
)?terminate 2: ok
lua req cleanup
delete thread 2
delete thread 1
$)'
024-access/on-abort.t TEST 10: ignore the client abort event in the user callback (uthread) - stap output expected @@ -1,13 +1,13 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
-delete thread 2
+delete thread 6
terminate 3: ok
-delete thread 3
-terminate 4: ok
delete thread 4
+terminate 7: ok
+delete thread 8
lua req cleanup
'
024-access/on-abort.t TEST 5: ngx.exit(-1) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/on-abort.t TEST 3: ngx.exit(499) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/on-abort.t TEST 9: regsiter on_abort callback but no client abortion - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
024-access/on-abort.t TEST 12: regsiter on_abort callback but no client abortion (uthread) - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 4
lua req cleanup
-delete thread 2
+delete thread 6
'
024-access/on-abort.t TEST 1: ignore the client abort event in the user callback - stap output expected @@ -2,8 +2,8 @@
lua check broken conn
terminate 2: ok
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 4
+terminate 5: ok
+delete thread 6
lua req cleanup
'
024-access/on-abort.t TEST 6: ngx.exit(0) with pending subrequest - stap output expected @@ -2,8 +2,8 @@
lua check broken conn
terminate 2: fail
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 4
+terminate 5: ok
+delete thread 6
lua req cleanup
'
024-access/on-abort.t TEST 11: abort in the user callback (uthread) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 6
-delete thread 3
+delete thread 4
'
024-access/uthread-exec.t TEST 4: exec in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
024-access/uthread-exec.t TEST 3: exec in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exec.t TEST 5: exec in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
024-access/uthread-exec.t TEST 2: exec in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-exec.t TEST 1: exec in user thread (entry still pending) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-exit.t TEST 10: exit in user thread (entry thread is still pending on udpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 11: exit in user thread (entry thread is still pending on reqsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 4: exit in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-exit.t TEST 1: exit in user thread (entry thread is still pending to run) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-exit.t TEST 12: exit in user thread (entry thread is still pending on ngx.req.read_body) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua req body cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 9: exit in user thread (entry thread is still pending on tcpsock:receiveuntil's iterator) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 5: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.tcp) - stap output expected @@ -1,12 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 6: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.udp) - stap output expected @@ -1,12 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 7: exit in user thread (entry thread is still pending on tcpsock:connect) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 8: exit in user thread (entry thread is still pending on tcpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 13: exit in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 2: exit in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 14: exit in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,12 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 15: exit in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
024-access/uthread-exit.t TEST 3: exit in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
024-access/uthread-redirect.t TEST 1: ngx.redirect() in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
024-access/uthread-redirect.t TEST 2: redirect in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
024-access/uthread-spawn.t TEST 9: two simple user threads doing single subrequests (entry also does a subrequest and quits between) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
'
024-access/uthread-spawn.t TEST 10: nested user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
-terminate 3: ok
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
+terminate 4: ok
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
+delete thread 5
delete thread 3
-delete thread 2
'
024-access/uthread-spawn.t TEST 20: user threads + ngx.socket.tcp - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 2: two simple user threads without I/O - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-terminate 2: ok
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
+terminate 2: ok
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
terminate 1: ok
-delete thread 2
delete thread 3
-delete thread 1
+delete thread 5
+delete thread 6
'
024-access/uthread-spawn.t TEST 19: two user threads flushing at the same time - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
create 4 in 1
spawn user thread 5 in 1
terminate 4: ok
terminate 1: ok
delete thread 3
delete thread 5
delete thread 6
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
create 3 in 1
spawn user thread 3 in 1
terminate 3: ok
terminate 1: ok
delete thread 2
delete thread 3
delete thread 1)$
)'
024-access/uthread-spawn.t TEST 17: manual time slicing between two user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
024-access/uthread-spawn.t TEST 1: simple user thread without I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-spawn.t TEST 5: error in user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: fail
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-spawn.t TEST 11: nested user threads (with I/O) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
024-access/uthread-spawn.t TEST 21: user threads + ngx.socket.udp - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 4
terminate 2: ok
delete thread 3
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1)$)'
024-access/uthread-spawn.t TEST 18: entry thread and a user thread flushing at the same time - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 16: manual time slicing between a user thread and the entry thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-spawn.t TEST 3: simple user thread with sleep - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 7: simple user threads doing a single subrequest (entry also does a subrequest and quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 4: two simple user threads with sleep - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
-terminate 3: ok
-delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 13: coroutine status of a dead user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-spawn.t TEST 12: coroutine status of a running user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 22: simple user thread with ngx.req.read_body() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
024-access/uthread-spawn.t TEST 15: creating user threads in a user coroutine - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
terminate 2: ok
-delete thread 3
+delete thread 4
terminate 1: ok
-delete thread 1
+delete thread 5
'
024-access/uthread-spawn.t TEST 14: coroutine status of a "normal" user thread - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
terminate 1: ok
-delete thread 1
-terminate 3: ok
+delete thread 5
+terminate 4: ok
terminate 2: ok
-delete thread 2
+delete thread 3
'
024-access/uthread-spawn.t TEST 23: simple user thread with ngx.req.socket() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
024-access/uthread-spawn.t TEST 8: simple user threads doing a single subrequest (entry also does a subrequest and quits late) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
024-access/uthread-spawn.t TEST 6: simple user threads doing a single subrequest (entry quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
043-shdict.t nginx: [emerg] lua_shared_dict "dogs" is already defined as "dogs" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:26
057-flush-timeout.t TEST 3: exit in user thread (entry thread is still pending on ngx.flush) - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua flush cleanup
delete timer 200
-delete thread 1
+delete thread 4
add timer 200
-expire timer 200
free request
'
065-tcp-socket-timeout.t TEST 16: exit in user thread (entry thread is still pending on tcpsock:send) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
072-conditional-get.t TEST 3: If-Unmodified-Since false - stap output expected got: "terminate 1: ok\x{0a}delete thread 2\x{0a}"
length: 32
expected: "terminate 1: ok\x{0a}delete thread 1\x{0a}"
length: 32
strings begin to differ at char 31 (line 2 column 15)
086-init-by.t nginx: [error] init_by_lua error: init_by_lua:2: failed to init
091-coroutine.t TEST 14: using ngx.exit in user coroutines - stap output expected @@ -1,11 +1,11 @@
create 2 in 1
resume 2 in 1
create 3 in 2
-yield 2 in 1
+yield 2 in 4
resume 2 in 1
resume 3 in 2
-yield 3 in 2
-yield 2 in 1
+yield 3 in 5
+yield 2 in 4
resume 2 in 1
resume 3 in 2
exit
'
091-coroutine.t TEST 15: using ngx.exec in user coroutines - stap output expected @@ -1,11 +1,11 @@
create 2 in 1
resume 2 in 1
create 3 in 2
-yield 2 in 1
+yield 2 in 4
resume 2 in 1
resume 3 in 2
-yield 3 in 2
-yield 2 in 1
+yield 3 in 5
+yield 2 in 4
resume 2 in 1
resume 3 in 2
exec
'
093-uthread-spawn.t TEST 20: user threads + ngx.socket.tcp - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 12: coroutine status of a running user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 17: manual time slicing between two user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
093-uthread-spawn.t TEST 26: multiple user threads + subrequests returning 404 remotely (no wait) - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
create 6 in 1
spawn user thread 7 in 1
create 8 in 1
spawn user thread 9 in 1
create a in 1
spawn user thread b in 1
terminate 1: ok
delete thread c
terminate 2: ok
delete thread 3
terminate 4: ok
delete thread 5
terminate 6: ok
delete thread 7
terminate 8: ok
delete thread 9
terminate 10: ok
delete thread b
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 4 in 1
create 5 in 1
spawn user thread 5 in 1
create 6 in 1
spawn user thread 6 in 1
terminate 1: ok
delete thread 1
(?:terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3
terminate 4: ok
delete thread 4
terminate 5: ok
delete thread 5
terminate 6: ok
delete thread 6
|terminate 6: ok
delete thread 6
terminate 5: ok
delete thread 5
terminate 4: ok
delete thread 4
terminate 3: ok
delete thread 3
terminate 2: ok
delete thread 2)$)'
093-uthread-spawn.t TEST 9: two simple user threads doing single subrequests (entry also does a subrequest and quits between) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
-delete thread 1
-terminate 3: ok
delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
'
093-uthread-spawn.t TEST 25: multiple user threads + subrequests returning 404 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
finalize request /t: rc:-4 c:4 a:1
finalize request /proxy/1: rc:404 c:3 a:0
post subreq: /proxy/1 rc=404, status=0 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
finalize request /proxy/2: rc:404 c:2 a:0
post subreq: /proxy/2 rc=404, status=0 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:0 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
finalize request /t: rc:-4 c:4 a:1
finalize request /proxy/1: rc:404 c:3 a:0
post subreq: /proxy/1 rc=404, status=0 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
finalize request /proxy/2: rc:404 c:2 a:0
post subreq: /proxy/2 rc=404, status=0 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:0 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
093-uthread-spawn.t TEST 6: simple user threads doing a single subrequest (entry quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 24: simple user thread with args - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 16: manual time slicing between a user thread and the entry thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 15: creating user threads in a user coroutine - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
terminate 2: ok
-delete thread 3
+delete thread 4
terminate 1: ok
-delete thread 1
+delete thread 5
'
093-uthread-spawn.t TEST 19: two user threads flushing at the same time - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
create 4 in 1
spawn user thread 5 in 1
terminate 4: ok
terminate 1: ok
delete thread 3
delete thread 5
delete thread 6
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
create 3 in 1
spawn user thread 3 in 1
terminate 3: ok
terminate 1: ok
delete thread 2
delete thread 3
delete thread 1)$
)'
093-uthread-spawn.t TEST 14: coroutine status of a "normal" user thread - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
terminate 1: ok
-delete thread 1
-terminate 3: ok
+delete thread 5
+terminate 4: ok
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 27: multiple user threads + subrequests returning 201 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
finalize request /t: rc:-4 c:4 a:1
terminate 7: ok
delete thread 8
finalize request /proxy/1: rc:0 c:3 a:0
post subreq: /proxy/1 rc=0, status=201 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
terminate 9: ok
delete thread a
finalize request /proxy/2: rc:0 c:2 a:0
post subreq: /proxy/2 rc=0, status=201 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:0 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
finalize request /t: rc:-4 c:4 a:1
terminate 4: ok
delete thread 4
finalize request /proxy/1: rc:0 c:3 a:0
post subreq: /proxy/1 rc=0, status=201 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
terminate 5: ok
delete thread 5
finalize request /proxy/2: rc:0 c:2 a:0
post subreq: /proxy/2 rc=0, status=201 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:0 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
093-uthread-spawn.t TEST 10: nested user threads - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
-terminate 3: ok
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
+terminate 4: ok
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
+delete thread 5
delete thread 3
-delete thread 2
'
093-uthread-spawn.t TEST 31: simple user thread without I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 2: two simple user threads without I/O - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-terminate 2: ok
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
+terminate 2: ok
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
terminate 1: ok
-delete thread 2
delete thread 3
-delete thread 1
+delete thread 5
+delete thread 6
'
093-uthread-spawn.t TEST 13: coroutine status of a dead user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 11: nested user threads (with I/O) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 3 in 1
+create 4 in 2
+spawn user thread 5 in 2
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
'
093-uthread-spawn.t TEST 7: simple user threads doing a single subrequest (entry also does a subrequest and quits early) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 5: error in user thread - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: fail
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 28: multiple user threads + subrequests returning 204 immediately - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
create 4 in 1
spawn user thread 5 in 1
terminate 1: ok
delete thread 6
finalize request /t: rc:-4 c:4 a:1
terminate 7: ok
delete thread 8
finalize request /proxy/1: rc:204 c:3 a:0
post subreq: /proxy/1 rc=204, status=204 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 3
terminate 9: ok
delete thread a
finalize request /proxy/2: rc:204 c:2 a:0
post subreq: /proxy/2 rc=204, status=204 a=0
subrequest /proxy/2 done
terminate 4: ok
delete thread 5
finalize request /t: rc:0 c:1 a:1
'
doesn't match '(?^ms:^create 2 in 1
spawn user thread 2 in 1
create 3 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 1
finalize request /t: rc:-4 c:4 a:1
terminate 4: ok
delete thread 4
finalize request /proxy/1: rc:204 c:3 a:0
post subreq: /proxy/1 rc=204, status=204 a=0
subrequest /proxy/1 done
terminate 2: ok
delete thread 2
terminate 5: ok
delete thread 5
finalize request /proxy/2: rc:204 c:2 a:0
post subreq: /proxy/2 rc=204, status=204 a=0
subrequest /proxy/2 done
terminate 3: ok
delete thread 3
finalize request /t: rc:0 c:1 a:1
(?:finalize request /t: rc:0 c:1 a:1)?$)'
093-uthread-spawn.t TEST 3: simple user thread with sleep - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 22: simple user thread with ngx.req.read_body() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
093-uthread-spawn.t TEST 1: simple user thread without I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 4: two simple user threads with sleep - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 1: ok
-delete thread 1
-terminate 3: ok
-delete thread 3
+delete thread 6
+terminate 4: ok
+delete thread 5
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 8: simple user threads doing a single subrequest (entry also does a subrequest and quits late) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
093-uthread-spawn.t TEST 23: simple user thread with ngx.req.socket() - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1|create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2)$)'
093-uthread-spawn.t TEST 18: entry thread and a user thread flushing at the same time - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
093-uthread-spawn.t TEST 21: user threads + ngx.socket.udp - stap output should match the pattern 'create 2 in 1
spawn user thread 3 in 1
terminate 1: ok
delete thread 4
terminate 2: ok
delete thread 3
'
doesn't match '(?^ms:^(?:create 2 in 1
spawn user thread 2 in 1
terminate 1: ok
delete thread 1
terminate 2: ok
delete thread 2
|create 2 in 1
spawn user thread 2 in 1
terminate 2: ok
terminate 1: ok
delete thread 2
delete thread 1
)$)'
094-uthread-exit.t TEST 7: exit in user thread (entry thread is still pending on tcpsock:connect) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 18: exit(408) in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,10 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
094-uthread-exit.t TEST 5: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.tcp) - stap output expected @@ -1,12 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 12: exit in user thread (entry thread is still pending on ngx.req.read_body) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua req body cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 8: exit in user thread (entry thread is still pending on tcpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 15: exit in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
094-uthread-exit.t TEST 10: exit in user thread (entry thread is still pending on udpsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 9: exit in user thread (entry thread is still pending on tcpsock:receiveuntil's iterator) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 11: exit in user thread (entry thread is still pending on reqsock:receive) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 12000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua tcp socket cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 2: exit in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 3: exit in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
094-uthread-exit.t TEST 4: exit in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
094-uthread-exit.t TEST 16: exit in entry thread (user thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 1: fail
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
094-uthread-exit.t TEST 14: exit in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,12 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
094-uthread-exit.t TEST 6: exit in user thread (entry thread is still pending on the DNS resolver for ngx.socket.udp) - stap output expected @@ -1,12 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 1
resolving agentzh.org
add timer 12000
-expire timer 1
terminate 2: ok
-delete thread 2
+delete thread 3
lua udp resolve cleanup
delete timer 12000
-delete thread 1
+delete thread 4
free request
'
094-uthread-exit.t TEST 17: exit(444) in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,10 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
094-uthread-exit.t TEST 1: exit in user thread (entry thread is still pending to run) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
094-uthread-exit.t TEST 19: exit(499) in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,10 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
094-uthread-exit.t TEST 13: exit(0) in user thread (entry thread is still pending on ngx.location.capture), with pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
095-uthread-exec.t TEST 5: exec in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,11 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
095-uthread-exec.t TEST 3: exec in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
095-uthread-exec.t TEST 1: exec in user thread (entry still pending) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
095-uthread-exec.t TEST 6: exec in entry thread (user thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,10 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 1: fail
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
095-uthread-exec.t TEST 4: exec in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
095-uthread-exec.t TEST 2: exec in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
096-uthread-redirect.t TEST 2: redirect in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
096-uthread-redirect.t TEST 3: ngx.redirect() in entry thread (user thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 1: fail
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
delete timer 200
free request
'
096-uthread-redirect.t TEST 1: ngx.redirect() in user thread (entry thread is still pending on ngx.location.capture_multi), without pending output - stap output expected @@ -1,13 +1,11 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
post subreq /echo
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
097-uthread-rewrite.t TEST 3: rewrite in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,11 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 1000
-expire timer 100
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 1
+delete thread 4
free request
'
097-uthread-rewrite.t TEST 1: rewrite in user thread (entry still pending) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
097-uthread-rewrite.t TEST 4: rewrite in a user thread (another user thread is still pending on ngx.sleep) - stap output expected @@ -1,15 +1,14 @@
create 2 in 1
-spawn user thread 2 in 1
-add timer 100
-create 3 in 1
spawn user thread 3 in 1
+add timer 100
+create 4 in 1
+spawn user thread 5 in 1
add timer 1000
terminate 1: ok
-delete thread 1
-expire timer 100
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
lua sleep cleanup
delete timer 1000
-delete thread 3
+delete thread 5
free request
'
097-uthread-rewrite.t TEST 2: rewrite in user thread (entry already quits) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 3
'
097-uthread-rewrite.t TEST 5: rewrite in user thread (entry thread is still pending on ngx.location.capture), without pending output - stap output expected @@ -1,12 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
add timer 100
add timer 200
-expire timer 100
terminate 2: fail
-expire timer 200
post subreq /sleep
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
free request
'
098-uthread-wait.t TEST 2: simple user thread wait with I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 18: entry coroutine waiting on a thread not created by itself - stap output expected @@ -1,7 +1,7 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 2: ok
terminate 1: fail
-delete thread 3
+delete thread 4
-delete thread 1
+delete thread 5
'
098-uthread-wait.t TEST 1: simple user thread wait without I/O - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 12: waiting on two simple user threads with I/O - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
-delete thread 2
-terminate 1: ok
-delete thread 1
-terminate 3: ok
delete thread 3
+terminate 1: ok
+delete thread 6
+terminate 4: ok
+delete thread 5
'
098-uthread-wait.t TEST 8: simple user thread wait with I/O, throw errors - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: fail
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 16: wait on uthreads on the exact order of their termination, but exit the world early - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
-delete thread 2
-terminate 1: ok
delete thread 3
-delete thread 1
+terminate 1: ok
+delete thread 5
+delete thread 6
'
098-uthread-wait.t TEST 14: waiting on two simple user threads without I/O, both aborted by errors - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-terminate 2: fail
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: fail
-delete thread 2
-terminate 1: ok
+terminate 2: fail
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: fail
delete thread 3
-delete thread 1
+terminate 1: ok
+delete thread 5
+delete thread 6
'
098-uthread-wait.t TEST 4: wait on uthreads on the exact order of their termination - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+terminate 4: ok
+delete thread 5
terminate 1: ok
-delete thread 1
+delete thread 6
'
098-uthread-wait.t TEST 20: lua backtrace dumper may access dead parent coroutines - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: fail
-delete thread 2
+delete thread 3
'
098-uthread-wait.t TEST 19: entry coroutine waiting on a user coroutine - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 1: fail
-delete thread 1
+delete thread 3
'
098-uthread-wait.t TEST 13: waiting on two simple user threads with I/O (uthreads completed in reversed order) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
-delete thread 3
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
+delete thread 5
terminate 1: ok
-delete thread 1
+delete thread 6
terminate 2: ok
-delete thread 2
+delete thread 3
'
098-uthread-wait.t TEST 21: waiting on a dead coroutine - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 17: wait on uthreads on the reversed order of their termination, but exit the world early - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
-delete thread 3
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
+delete thread 5
terminate 1: ok
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 6
'
098-uthread-wait.t TEST 10: simple user thread wait with I/O (in a user coroutine) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
-delete thread 3
+delete thread 4
terminate 2: ok
terminate 1: ok
-delete thread 1
+delete thread 5
'
098-uthread-wait.t TEST 11: waiting on two simple user threads without I/O - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-terminate 2: ok
-create 3 in 1
spawn user thread 3 in 1
-terminate 3: ok
-delete thread 2
-terminate 1: ok
+terminate 2: ok
+create 4 in 1
+spawn user thread 5 in 1
+terminate 4: ok
delete thread 3
-delete thread 1
+terminate 1: ok
+delete thread 5
+delete thread 6
'
098-uthread-wait.t TEST 3: wait on uthreads on the reversed order of their termination - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: ok
-terminate 3: ok
+terminate 4: ok
+delete thread 5
delete thread 3
-delete thread 2
terminate 1: ok
-delete thread 1
+delete thread 6
'
098-uthread-wait.t TEST 9: simple user thread wait without I/O (in a user coroutine) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
-delete thread 3
+delete thread 4
terminate 2: ok
terminate 1: ok
-delete thread 1
+delete thread 5
'
098-uthread-wait.t TEST 5: simple user thread wait without I/O (return multiple values) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 6: simple user thread wait with I/O, return multiple values - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
098-uthread-wait.t TEST 15: waiting on two simple user threads with I/O, both aborted by errors - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
-spawn user thread 2 in 1
-create 3 in 1
spawn user thread 3 in 1
+create 4 in 1
+spawn user thread 5 in 1
terminate 2: fail
-delete thread 2
-terminate 1: ok
-delete thread 1
-terminate 3: fail
delete thread 3
+terminate 1: ok
+delete thread 6
+terminate 4: fail
+delete thread 5
'
098-uthread-wait.t TEST 7: simple user thread wait without I/O, throw errors - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: fail
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
100-client-abort.t TEST 5: subrequest + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: fail
lua req cleanup
-delete thread 1
+delete thread 2
'
100-client-abort.t TEST 19: ngx.req.socket + receive n == content-length + stop - stap output should match the pattern 'lua check broken conn
terminate 1: ok
delete thread 2
lua req cleanup
'
doesn't match '(?^ms:^(?:lua check broken conn
terminate 1: ok
delete thread 1
lua req cleanup|lua check broken conn
lua check broken conn
lua req cleanup
delete thread 1)$
)'
100-client-abort.t TEST 3: sleep + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
100-client-abort.t TEST 18: ngx.req.socket + receive n < content-length + stop - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
100-client-abort.t TEST 17: ngx.req.socket + receive n < content-length + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
100-client-abort.t TEST 23: exec to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
100-client-abort.t TEST 22: exec to lua + ignore - stap output expected @@ -1,6 +1,6 @@
terminate 1: ok
lua req cleanup
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
lua req cleanup
'
100-client-abort.t TEST 20: ngx.req.socket + receive n == content-length + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
100-client-abort.t TEST 24: exec (named location) to proxy + ignore - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
lua req cleanup
-delete thread 1
+delete thread 2
'
100-client-abort.t TEST 26: sleep (default off) - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
101-on-abort.t TEST 1: ignore the client abort event in the user callback - stap output should match the pattern 'create 2 in 1
lua check broken conn
terminate 2: ok
terminate 1: ok
delete thread 3
delete thread 4
lua req cleanup
'
doesn't match '(?^ms:^create 2 in 1
lua check broken conn
terminate 2: ok
(?:lua check broken conn
)?terminate 1: ok
delete thread 2
delete thread 1
lua req cleanup)'
101-on-abort.t TEST 11: abort in the user callback (uthread) - stap output expected @@ -1,10 +1,10 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 6
-delete thread 3
+delete thread 4
'
101-on-abort.t TEST 15: abort with 444 in the user callback, but the header is already sent - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 13: regsiter on_abort callback multiple times - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
101-on-abort.t TEST 12: regsiter on_abort callback but no client abortion (uthread) - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 4
lua req cleanup
-delete thread 2
+delete thread 6
'
101-on-abort.t TEST 4: ngx.exit(408) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 18: regsiter on_abort callback but no client abortion (2 uthreads and 1 pending) - stap output expected @@ -1,12 +1,12 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
-create 4 in 1
spawn user thread 4 in 1
+create 5 in 1
+spawn user thread 6 in 1
terminate 1: ok
-delete thread 1
+delete thread 7
terminate 3: ok
lua req cleanup
-delete thread 2
-delete thread 3
+delete thread 8
delete thread 4
+delete thread 6
'
101-on-abort.t TEST 3: ngx.exit(499) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 8: ignore the client abort event in the user callback (no check) - stap output expected @@ -1,3 +1,3 @@
terminate 1: ok
-delete thread 1
+delete thread 2
lua req cleanup
'
101-on-abort.t TEST 10: ignore the client abort event in the user callback (uthread) - stap output expected @@ -1,11 +1,11 @@
create 2 in 1
create 3 in 1
-spawn user thread 3 in 1
+spawn user thread 4 in 1
terminate 1: ok
-delete thread 1
+delete thread 5
lua check broken conn
terminate 2: ok
-delete thread 2
+delete thread 6
terminate 3: ok
-delete thread 3
+delete thread 4
lua req cleanup
'
101-on-abort.t TEST 16: abort with 408 in the user callback, but the header is already sent - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 2: abort in the user callback - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 9: regsiter on_abort callback but no client abortion - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
lua req cleanup
-delete thread 2
+delete thread 4
'
101-on-abort.t TEST 6: ngx.exit(0) with pending subrequest - stap output expected @@ -2,6 +2,6 @@
lua check broken conn
terminate 2: fail
terminate 1: ok
-delete thread 2
-delete thread 1
+delete thread 3
+delete thread 4
lua req cleanup
'
101-on-abort.t TEST 7: accessing cosocket in callback - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 5: ngx.exit(-1) with pending subrequest - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
101-on-abort.t TEST 14: abort with 499 in the user callback, but the header is already sent - stap output expected @@ -2,5 +2,5 @@
lua check broken conn
terminate 2: ok
lua req cleanup
-delete thread 2
+delete thread 3
-delete thread 1
+delete thread 4
'
106-timer.t TEST 9: simple at (sleep in the timer callback) - log_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
106-timer.t TEST 12: tcp cosocket in timer handler (keep-alive connections) - body_filter_by_lua - stap output should match the pattern 'create 2 in 1
create 3 in 1
terminate 2: ok
delete thread 4
terminate 3: ok
delete thread 5
'
doesn't match '(?^ms:create 2 in 1
create 3 in 1
(?:terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3
|terminate 3: ok
delete thread 3
terminate 2: ok
delete thread 2)$)'
106-timer.t TEST 27: lua_max_running_timers (just not enough) - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
create 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 5
'
106-timer.t TEST 26: lua_max_pending_timers - chained timers (zero delay) - not exceeding - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
-terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+create 4 in 2
+terminate 2: ok
+delete thread 5
+terminate 4: ok
+delete thread 6
'
106-timer.t TEST 11: tcp cosocket in timer handler (keep-alive connections) - header_filter_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
106-timer.t TEST 19: exit in user thread (entry thread is still pending on ngx.sleep) - stap output should match the pattern 'create 2 in 1
terminate 1: ok
delete thread 3
free request
create 4 in 2
spawn user thread 5 in 2
add timer 100
add timer 1000
terminate 4: ok
delete thread 5
lua sleep cleanup
delete timer 1000
delete thread 6
'
doesn't match '(?^ms:(?:create 2 in 1
terminate 1: ok
delete thread 1
free request
create 3 in 2
spawn user thread 3 in 2
add timer 100
add timer 1000
expire timer 100
terminate 3: ok
delete thread 3
lua sleep cleanup
delete timer 1000
delete thread 2|create 2 in 1
terminate 1: ok
delete thread 1
create 3 in 2
spawn user thread 3 in 2
add timer 100
add timer 1000
free request
expire timer 100
terminate 3: ok
delete thread 3
lua sleep cleanup
delete timer 1000
delete thread 2)$)'
106-timer.t TEST 16: shared dict - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 7: 0 timer - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 15: ngx.thread API - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
-spawn user thread 3 in 2
-terminate 3: ok
delete thread 3
+create 4 in 2
+spawn user thread 5 in 2
+terminate 4: ok
+delete thread 5
terminate 2: ok
-delete thread 2
+delete thread 6
'
106-timer.t TEST 30: user args - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 13: tcp cosocket in timer handler (keep-alive connections) - set_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
106-timer.t TEST 10: tcp cosocket in timer handler (keep-alive connections) - log_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
106-timer.t TEST 5: tcp cosocket in timer handler (short connections) - stap output expected @@ -1,7 +1,7 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 1: ok
-delete thread 1
-terminate 2: ok
delete thread 2
+terminate 3: ok
+delete thread 4
'
106-timer.t TEST 24: lua_max_pending_timers (just not exceeding) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 6
'
106-timer.t TEST 6: tcp cosocket in timer handler (keep-alive connections) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 14: coroutine API - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
+delete thread 3
+create 4 in 2
terminate 2: ok
-delete thread 2
+delete thread 5
'
106-timer.t TEST 8: udp cosocket in timer handler - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 1: simple at - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 23: lua_max_pending_timers - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 29: lua_max_running_timers (just enough) - 2 - stap output expected @@ -1,11 +1,11 @@
create 2 in 1
create 3 in 1
terminate 1: ok
-delete thread 1
-create 4 in 3
+delete thread 4
+create 5 in 3
terminate 2: ok
-delete thread 2
+delete thread 6
terminate 3: ok
-delete thread 3
+delete thread 7
-terminate 4: ok
+terminate 5: ok
-delete thread 4
+delete thread 8
'
106-timer.t TEST 22: multiple parallel timers - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 6
'
106-timer.t TEST 21: chained timers (non-zero delay) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
-terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+create 4 in 2
+terminate 2: ok
+delete thread 5
+terminate 4: ok
+delete thread 6
'
106-timer.t TEST 4: simple at (sleep in the timer callback) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
106-timer.t TEST 28: lua_max_running_timers (just enough) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 1
terminate 1: ok
-delete thread 1
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 5
terminate 3: ok
-delete thread 3
+delete thread 6
'
106-timer.t TEST 25: lua_max_pending_timers - chained timers (non-zero delay) - not exceeding - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
-terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+create 4 in 2
+terminate 2: ok
+delete thread 5
+terminate 4: ok
+delete thread 6
'
106-timer.t TEST 20: chained timers (0 delay) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
terminate 1: ok
-delete thread 1
-create 3 in 2
-terminate 2: ok
-delete thread 2
-terminate 3: ok
delete thread 3
+create 4 in 2
+terminate 2: ok
+delete thread 5
+terminate 4: ok
+delete thread 6
'
108-timer-safe.t TEST 6: udp cosocket in timer handler - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
108-timer-safe.t TEST 2: simple at (sleep in the timer callback) - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
108-timer-safe.t TEST 8: tcp cosocket in timer handler (keep-alive connections) - log_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
108-timer-safe.t TEST 5: 0 timer - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 1: ok
-delete thread 1
+delete thread 3
terminate 2: ok
-delete thread 2
+delete thread 4
'
108-timer-safe.t TEST 1: simple at - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
108-timer-safe.t TEST 7: simple at (sleep in the timer callback) - log_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
108-timer-safe.t TEST 9: tcp cosocket in timer handler (keep-alive connections) - header_filter_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
108-timer-safe.t TEST 11: tcp cosocket in timer handler (keep-alive connections) - set_by_lua - stap output expected @@ -1,3 +1,3 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
'
108-timer-safe.t TEST 17: exit in user thread (entry thread is still pending on ngx.sleep) - stap output expected @@ -1,14 +1,13 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
add timer 100
add timer 1000
-expire timer 100
terminate 3: ok
-delete thread 3
+delete thread 4
lua sleep cleanup
delete timer 1000
-delete thread 2
+delete thread 5
terminate 1: ok
-delete thread 1
+delete thread 6
free request
'
108-timer-safe.t TEST 12: coroutine API - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
create 3 in 2
terminate 2: ok
-delete thread 2
+delete thread 4
terminate 1: ok
-delete thread 1
+delete thread 5
'
108-timer-safe.t TEST 10: tcp cosocket in timer handler (keep-alive connections) - body_filter_by_lua - stap output should match the pattern 'create 2 in 1
create 3 in 1
terminate 2: ok
delete thread 4
terminate 3: ok
delete thread 5
'
doesn't match '(?^ms:create 2 in 1
create 3 in 1
(?:terminate 2: ok
delete thread 2
terminate 3: ok
delete thread 3
|terminate 3: ok
delete thread 3
terminate 2: ok
delete thread 2)$)'
108-timer-safe.t TEST 14: shared dict - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
108-timer-safe.t TEST 18: chained timers (non-zero delay) - stap output expected @@ -1,8 +1,8 @@
create 2 in 1
create 3 in 2
terminate 2: ok
-delete thread 2
+delete thread 4
terminate 3: ok
-delete thread 3
+delete thread 5
terminate 1: ok
-delete thread 1
+delete thread 6
'
108-timer-safe.t TEST 13: ngx.thread API - stap output expected @@ -1,9 +1,9 @@
create 2 in 1
create 3 in 2
-spawn user thread 3 in 2
+spawn user thread 4 in 2
terminate 3: ok
-delete thread 3
+delete thread 4
terminate 2: ok
-delete thread 2
+delete thread 5
terminate 1: ok
-delete thread 1
+delete thread 6
'
126-shdict-frag.t TEST 9: cannot merge in-used big slabs page (forward) - response_body - response is expected (repeated req 0, req 0) @@ -2,4 +2,4 @@
failed to safe set baz: no memory
found bar: 4000
delete bar
-failed to safe set baz: no memory
+successfully safe set baz
'
126-shdict-frag.t TEST 9: cannot merge in-used big slabs page (forward) - stap output expected @@ -2,7 +2,6 @@
init zone alloc pages: 1 ok
init zone alloc pages: 1 ok
alloc pages: 1 ok
-alloc pages: 1 ok
alloc pages: 2 NOT OK
free pages: 1
-alloc pages: 2 NOT OK
+alloc pages: 2 ok
'
126-shdict-frag.t TEST 7: merge big slabs (less than max slab size) backward - stap output expected @@ -2,8 +2,6 @@
init zone alloc pages: 1 ok
init zone alloc pages: 1 ok
alloc pages: 1 ok
-alloc pages: 1 ok
-free pages: 1
alloc pages: 2 NOT OK
free pages: 1
alloc pages: 2 ok
'
127-uthread-kill.t TEST 2: already waited - stap output expected @@ -1,6 +1,6 @@
create 2 in 1
-spawn user thread 2 in 1
+spawn user thread 3 in 1
terminate 2: ok
-delete thread 2
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
127-uthread-kill.t TEST 1: kill pending sleep - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
-delete thread 2
+spawn user thread 3 in 1
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
127-uthread-kill.t TEST 4: kill pending connect - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
-delete thread 2
+spawn user thread 3 in 1
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
127-uthread-kill.t TEST 3: kill pending resolver - stap output expected @@ -1,5 +1,5 @@
create 2 in 1
-spawn user thread 2 in 1
-delete thread 2
+spawn user thread 3 in 1
+delete thread 3
terminate 1: ok
-delete thread 1
+delete thread 4
'
132-lua-blocks.t nginx: [emerg] Lua code block missing the closing long bracket "]]" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:41
132-lua-blocks.t nginx: [emerg] Lua code block missing the closing long bracket "]=]" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:41
132-lua-blocks.t nginx: [emerg] Lua code block missing the closing long bracket "]]" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:41
132-lua-blocks.t nginx: [emerg] Lua code block missing the closing long bracket "]==]" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:41
132-lua-blocks.t nginx: [emerg] "events" directive is not allowed here in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:56
142-ssl-session-store.t nginx: [emerg] "ssl_session_store_by_lua_block" directive is not allowed here in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:28
148-fake-shm-zone.t nginx: [emerg] lua_fake_shm "x1" is already defined as "x1" in /home/ec2-user/git/lua-nginx-module/t/servroot/conf/nginx.conf:26

Warnings

Go back to the index page.