Welcome! Log In Create A New Profile

Advanced

Helloo,do anyone has this situation?

cruze guo
April 16, 2015 06:04AM
I compile the nginx with this configure.
--prefix=/home/svn/nginx --user=svn
--add-module=../ngx_devel_kit-master
--add-module=../srcache-nginx-module-master
--add-module=../redis2-nginx-module-master
--add-module=../set-misc-nginx-module-master
--add-module=../echo-nginx-module-master
--add-module=../ngx_http_redis-0.3.7
--add-module=../lua-nginx-module-0.9.13 --with-debug

I want to use nginx +redis for caching the svn webdav method.
I also patch some code for support the webdav http method,propfind
,but in this situation,it's not import.

The svn client use chunked encode for http client request .When I use
the TortoiseSVN 1.8.11 to test my cache system.
I get this

read: 21, 00007FFFF1964830, 2048, 131072
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 133120
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 135168
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 137216
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 139264
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 141312
2015/04/08 13:08:58 [debug] 16486#0: *1 read: 21, 00007FFFF1964830, 2048, 143360
2015/04/08 13:08:58 [debug] 16486#0: *1 access phase: 8
2015/04/08 13:08:58 [debug] 16486#0: *1 lua access handler,
uri:"/ps/se/branches" c:1
2015/04/08 13:08:58 [debug] 16486#0: *1 http client request body preread 120
2015/04/08 13:08:58 [debug] 16486#0: *1 http request body chunked filter
2015/04/08 13:08:58 [debug] 16486#0: *1 http body chunked buf t:1 f:0
0000000000746440, pos 0000000000746609, size: 120 file: 0, size: 0 <==
120 IS NOT ENOUGH FOR REQUEST !!!!!
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 31 s:0
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 32 s:1
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 63 s:1
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 0D s:1
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 0A s:3
2015/04/08 13:08:58 [debug] 16486#0: *1 http chunked byte: 3C s:4
2015/04/08 13:08:58 [debug] 16486#0: *1 http body chunked buf t:1 f:0
0000000000746440, pos 0000000000746681, size: 0 file: 0, size: 0
2015/04/08 13:08:58 [debug] 16486#0: *1 http body new buf t:1 f:0
000000000074660E, pos 000000000074660E, size: 115 file: 0, size: 0
2015/04/08 13:08:58 [debug] 16486#0: *1 malloc:
00007FD8C33DC010:1048576 <=== SO MALLOC NEW BUF

but ,the (struct ngx_http_request_s) 's write_event_handler will be
set to ngx_http_request_empty_handler.

in ngx_http_request_body.c
function ngx_http_read_client_request_body
r->write_event_handler = ngx_http_request_empty_handler;

It mean nothing will handle the next step,when you read all client
request body!!
I want to know how to take the request body buffer bigger ?
or,can I use this ugly patch to solve this problem?

for struct ngx_http_request_s {
.........
ngx_http_event_handler_pt read_event_handler;
ngx_http_event_handler_pt write_event_handler;
ngx_http_event_handler_pt write_event_handler_back; <=== ADD this
.........
}

it's ugly but it's useful.

_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

Helloo,do anyone has this situation?

cruze guo April 16, 2015 06:04AM

Re: Helloo,do anyone has this situation?

Maxim Dounin April 16, 2015 09:44AM

Re: Helloo,do anyone has this situation?

cruze guo April 16, 2015 10:28PM

Re: Helloo,do anyone has this situation?

Maxim Dounin April 17, 2015 09:34AM

Re: Helloo,do anyone has this situation?

cruze guo April 21, 2015 02:46AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 298
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready