why will nginx's map directive eat all ram?

Valentin V. Bartenev vbart at nginx.com
Sat Aug 3 10:08:50 UTC 2013

On Saturday 03 August 2013 06:08:43 Payne Chu wrote:
> here it is
> nginx version: ngx_openresty/
> TLS SNI support enabled
> configure arguments: --prefix=/usr/local/openresty/nginx
> --with-cc-opt='-I/usr/local/Cellar/pcre/8.33/include
> -I/usr/local/Cellar/luajit/2.02/luajit2.0/include'
> --add-module=../ngx_devel_kit-0.2.18 --add-module=../echo-nginx-module-0.45
> --add-module=../xss-nginx-module-0.03rc9 --add-module=../ngx_coolkit-0.2rc1
> --add-module=../set-misc-nginx-module-0.22rc8
> --add-module=../form-input-nginx-module-0.07
> --add-module=../encrypted-session-nginx-module-0.03
> --add-module=../srcache-nginx-module-0.21 --add-module=../ngx_lua-0.8.5
> --add-module=../headers-more-nginx-module-0.21
> --add-module=../array-var-nginx-module-0.03rc1
> --add-module=../memc-nginx-module-0.13rc3
> --add-module=../redis2-nginx-module-0.10
> --add-module=../redis-nginx-module-0.3.6
> --add-module=../auth-request-nginx-module-0.2
> --add-module=../rds-json-nginx-module-0.12rc10
> --add-module=../rds-csv-nginx-module-0.05rc2
> --with-ld-opt='-Wl,-rpath,/usr/local/openresty/luajit/lib
> -L/usr/local/Cellar/pcre/8.33/lib
> -L/usr/local/Cellar/luajit/2.02/luajit2.0/lib'
> --http-client-body-temp-path=/var/tmp/nginx/client_body
> --http-proxy-temp-path=/var/tmp/nginx/proxy
> --http-fastcgi-temp-path=/var/tmp/nginx/fastcgi
> --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi
> --http-scgi-temp-path=/var/tmp/nginx/scgi --with-http_ssl_module
> Actually Im using OpenResty. But since OpenResty said it's just standard
> nginx.

No, any nginx with 3-rd party modules ("--add-module" arguments in your
"nginx -V" output) isn't standard.  Even if such modules do not used in
config, they still can affect behavior in strange ways.

> and in config I not even active any lua directive yet. so I thought
> this should the nginx probelm. But when I install nginx-1.4.1 through
> `Homebrew`. I cannot find same issue in the brew version. Maybe just one of
> OpenResty used module trigger this. below is the config trigger this issue.
> And let me know if I need to forward this issue to OpenResty. Thanks :)

Yes, you should forward this issue to OpenResty, since you can't reproduce
it without 3-rd party code, and there are no known problems with the map 
directive memory consumption.

  wbr, Valentin V. Bartenev


More information about the nginx mailing list