757
=== TEST 13: failing reread after reading timeout happens
761
local sock, err = ngx.req.socket()
764
ngx.say("failed to get socket: ", err)
768
sock:settimeout(100);
770
local data, err, partial = sock:receive(4096)
772
ngx.say("err: ", err, ", partial: ", partial)
775
local data, err, partial = sock:receive(4096)
777
ngx.say("err: ", err, ", partial: ", partial)
786
Content-Length: 10245\r
790
err: timeout, partial: hello
791
err: timeout, partial:
794
lua tcp socket read timed out
798
=== TEST 14: successful reread after reading timeout happens (receive -> receive)
802
local sock = ngx.socket.tcp()
803
local ok, err = sock:connect("127.0.0.1", ngx.var.server_port)
805
ngx.say("failed to connect: ", err)
809
local bytes, err = sock:send("POST /back HTTP/1.0\\r\\nHost: localhost\\r\\nContent-Length: 1024\\r\\n\\r\\nabc")
811
ngx.say("failed to send: ", err)
813
ngx.say("sent: ", bytes)
818
local bytes, err = sock:send("hello world")
820
ngx.say("failed to send: ", err)
822
ngx.say("sent: ", bytes)
825
local reader = sock:receiveuntil("\\r\\n\\r\\n")
826
local header, err = reader()
828
ngx.say("failed to receive header: ", err)
833
local line, err = sock:receive()
835
ngx.say("failed to receive line: ", err)
838
ngx.say("received: ", line)
848
local sock, err = ngx.req.socket()
851
ngx.say("failed to get socket: ", err)
855
sock:settimeout(100);
857
local data, err, partial = sock:receive(4096)
859
ngx.say("err: ", err, ", partial: ", partial)
861
ngx.say("received: ", data)
866
local data, err, partial = sock:receive(11)
868
ngx.say("err: ", err, ", partial: ", partial)
870
ngx.say("received: ", data)
880
received: err: timeout, partial: abc
881
received: received: hello world
884
lua tcp socket read timed out
888
=== TEST 15: successful reread after reading timeout happens (receive -> receiveuntil)
892
local sock = ngx.socket.tcp()
893
local ok, err = sock:connect("127.0.0.1", ngx.var.server_port)
895
ngx.say("failed to connect: ", err)
899
local bytes, err = sock:send("POST /back HTTP/1.0\\r\\nHost: localhost\\r\\nContent-Length: 1024\\r\\n\\r\\nabc")
901
ngx.say("failed to send: ", err)
903
ngx.say("sent: ", bytes)
908
local bytes, err = sock:send("hello world\\n")
910
ngx.say("failed to send: ", err)
912
ngx.say("sent: ", bytes)
915
local reader = sock:receiveuntil("\\r\\n\\r\\n")
916
local header, err = reader()
918
ngx.say("failed to receive header: ", err)
923
local line, err = sock:receive()
925
ngx.say("failed to receive line: ", err)
928
ngx.say("received: ", line)
938
local sock, err = ngx.req.socket()
941
ngx.say("failed to get socket: ", err)
945
sock:settimeout(100);
947
local data, err, partial = sock:receive(4096)
949
ngx.say("err: ", err, ", partial: ", partial)
951
ngx.say("received: ", data)
956
local reader = sock:receiveuntil("\\n")
957
local data, err, partial = reader()
959
ngx.say("err: ", err, ", partial: ", partial)
961
ngx.say("received: ", data)
971
received: err: timeout, partial: abc
972
received: received: hello world
975
lua tcp socket read timed out
979
=== TEST 16: successful reread after reading timeout happens (receiveuntil -> receive)
983
local sock = ngx.socket.tcp()
984
local ok, err = sock:connect("127.0.0.1", ngx.var.server_port)
986
ngx.say("failed to connect: ", err)
990
local bytes, err = sock:send("POST /back HTTP/1.0\\r\\nHost: localhost\\r\\nContent-Length: 1024\\r\\n\\r\\nabc")
992
ngx.say("failed to send: ", err)
994
ngx.say("sent: ", bytes)
999
local bytes, err = sock:send("hello world\\n")
1001
ngx.say("failed to send: ", err)
1003
ngx.say("sent: ", bytes)
1006
local reader = sock:receiveuntil("\\r\\n\\r\\n")
1007
local header, err = reader()
1009
ngx.say("failed to receive header: ", err)
1014
local line, err = sock:receive()
1016
ngx.say("failed to receive line: ", err)
1019
ngx.say("received: ", line)
1029
local sock, err = ngx.req.socket()
1032
ngx.say("failed to get socket: ", err)
1036
sock:settimeout(100);
1038
local reader = sock:receiveuntil("no-such-terminator")
1039
local data, err, partial = reader()
1041
ngx.say("err: ", err, ", partial: ", partial)
1043
ngx.say("received: ", data)
1048
local data, err, partial = sock:receive()
1050
ngx.say("err: ", err, ", partial: ", partial)
1052
ngx.say("received: ", data)
1062
received: err: timeout, partial: abc
1063
received: received: hello world
1066
lua tcp socket read timed out
1070
=== TEST 17: req socket GC'd
1075
local sock, err = ngx.req.socket()
1077
ngx.say("got the request socket")
1079
ngx.say("failed to get the request socket: ", err)
1083
ngx.log(ngx.WARN, "GC cycle done")
1092
got the request socket
1096
--- grep_error_log eval: qr/lua finalize socket|GC cycle done/
1097
--- grep_error_log_out