Skip to content

9: Bad file descriptor #1806

@niko

Description

@niko

I'm using Openresty 1.17.8.2 to stream data from Redis to clients. So there are long open connections to Redis using lua-resty-redis and long open connections to the clients. Lately I'm seeing these error messages:

2020/10/21 08:46:31 [emerg] 27167#3261: lua pipe child close() socket xx.xx.x.xx:443 failed (9: Bad file descriptor)

The unexpected thing: I increased the log level from warn to debug and the error messages disappear. Any idea how I can further debug the error?

This is how it actually looks in the logs (docker logs -f e0dfb6f130 | grep descriptor | uniq -c), the number at the beginning of the line being the number of occurrences of the very same line:

     30 2020/10/21 11:48:19 [emerg] 822#30882: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:19 [emerg] 822#30882: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:19 [emerg] 822#30882: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:22 [emerg] 816#30887: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:48:51 [emerg] 841#30972: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:21 [emerg] 826#31034: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:49:48 [emerg] 822#31161: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

     31 2020/10/21 11:50:00 [emerg] 812#31162: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:00 [emerg] 812#31162: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:00 [emerg] 812#31162: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

     31 2020/10/21 11:50:09 [emerg] 812#31207: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:09 [emerg] 812#31207: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:09 [emerg] 812#31207: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

     31 2020/10/21 11:50:10 [emerg] 812#31215: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:10 [emerg] 812#31215: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     31 2020/10/21 11:50:10 [emerg] 812#31215: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:50:25 [emerg] 821#31279: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

      1 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
      1 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)
     30 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket xx.xx.x.xx:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket 172.17.110.1:8080 failed (9: Bad file descriptor)
     30 2020/10/21 11:51:44 [emerg] 816#31537: lua pipe child close() socket xx.xx.x.xx:8443 failed (9: Bad file descriptor)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions