Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filelist >500 files leads to close connection #79

Open
donkeyDau opened this issue Nov 18, 2020 · 1 comment
Open

Filelist >500 files leads to close connection #79

donkeyDau opened this issue Nov 18, 2020 · 1 comment

Comments

@donkeyDau
Copy link

I'm experiencing a similar issue to #55 When sending a request with more than 500 (don't know the exact limit but something around this) I see:

2020/11/18 15:16:14 [alert] 12#12: *41 sendfile() failed (9: Bad file descriptor) while sending request to upstream, client: 192.168.79.196, server: , request: "POST /download/output/ckhbq1z1v000f08gie9weabiu HTTP/1.1", subrequest: "/s3/output/ckhbq1z1v000f08gie9weabiu/out/1002610", upstream: "http://10.96.147.248:80/output/ckhbq1z1v000f08gie9weabiu/out/1002610", host: "download.xxxx.com", referrer: "https://xxxx.com/output/export"
2020/11/18 15:16:14 [error] 12#12: *41 mod_zip: a subrequest returned 502, aborting... while sending to client, client: 192.168.79.196, server: , request: "POST /download/output/ckhbq1z1v000f08gie9weabiu HTTP/1.1", subrequest: "/s3/output/ckhbq1z1v000f08gie9weabiu/out/1002610", upstream: "http://10.96.147.248:80/output/ckhbq1z1v000f08gie9weabiu/out/1002610", host: "download.xxxx.com", referrer: "https://xxxx.com/output/export"
192.168.79.196 - - [18/Nov/2020:15:16:14 +0000] "POST /download/output/ckhbq1z1v000f08gie9weabiu HTTP/1.1" 200 0 "https://xxxx.com" "Mozilla/5.0 (X11; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0"

The file 1002610 is the first in the list.

I'm using nginx build with this docker file:

FROM centos:8

EXPOSE 80

ENV NGINX_VERSION=1.16.1

# install system packages
RUN yum -y install epel-release \
    && yum -y install gcc git make openssl-devel pcre-devel zlib-devel \
    supervisor \
    && yum -y update \
    && yum -y clean all

# install nginx
RUN curl -LO http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz \
    && tar zxf nginx-${NGINX_VERSION}.tar.gz \
    && cd nginx-${NGINX_VERSION} \
    && git clone https://github.com/evanmiller/mod_zip.git \
    && ./configure \
    --prefix=/usr \
    --conf-path=/etc/nginx/nginx.conf \
    --sbin-path=/usr/sbin \
    --http-log-path=/dev/stdout \
    --error-log-path=/dev/stdout \
    --lock-path=/var/lock/nginx.lock \
    --pid-path=/run/nginx.pid \
    --http-client-body-temp-path=/var/lib/nginx/body \
    --http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
    --http-proxy-temp-path=/var/lib/nginx/proxy \
    --http-scgi-temp-path=/var/lib/nginx/scgi \
    --http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
    --with-pcre-jit \
    --with-ipv6 \
    --with-file-aio \
    --with-threads \
    --with-http_ssl_module \
    --with-http_realip_module \
    --with-http_addition_module \
    --with-http_gzip_static_module \
    --with-http_gunzip_module \
    --with-http_sub_module \
    --add-module=mod_zip \
    && make install  \
    && cd .. \
    && rm -f nginx-${NGINX_VERSION}.tar.gz \
    && rm -rf nginx-${NGINX_VERSION} \
    && mkdir -p /var/lib/nginx/body


RUN mkdir -p /var/www/html

COPY start.sh /
COPY nginx.conf /etc/nginx/

CMD [ "/start.sh", "-c", "/etc/nginx/nginx.conf" ]

A fresh build 1 hour ago didn't change anything. The S3 backend is Minio.

I'm glad to provide more logs/details if needed.

@donkeyDau
Copy link
Author

Further investigations led to a slightly different picture. I have two types of requests: one is carrying a POST body, the other not. Without the POST body I see no limitations. With POST body the previously stated "limit" kicks in and leads to the error. The POST body size should be something around 40-50kb when this error occurs. I'm stuck here. Has anyone a suggestion?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant