afb-daemon doesn't close correctly when client hangup

Description

The commit 51ab7c2f95d6d459302423a57cc617021ef6126d fixing SPEC-2651 introduced a regression that makes the daemon loop on client disconnection but not closing it. See below:

epoll_wait(5, [{EPOLLIN|EPOLLHUP, {u32=14794336, u64=14794336}}], 5, -1) = 1 clock_gettime(CLOCK_BOOTTIME, {tv_sec=17522, tv_nsec=90811826}) = 0 readv(10, [{iov_base="", iov_len=2}], 1) = 0 epoll_wait(5, [{EPOLLIN|EPOLLHUP, {u32=14794336, u64=14794336}}], 5, -1) = 1 clock_gettime(CLOCK_BOOTTIME, {tv_sec=17522, tv_nsec=90867020}) = 0 readv(10, [{iov_base="", iov_len=2}], 1) = 0 epoll_wait(5, [{EPOLLIN|EPOLLHUP, {u32=14794336, u64=14794336}}], 5, -1) = 1 clock_gettime(CLOCK_BOOTTIME, {tv_sec=17522, tv_nsec=90922228}) = 0 readv(10, [{iov_base="", iov_len=2}], 1) = 0 epoll_wait(5, [{EPOLLIN|EPOLLHUP, {u32=14794336, u64=14794336}}], 5, -1) = 1 clock_gettime(CLOCK_BOOTTIME, {tv_sec=17522, tv_nsec=90977075}) = 0 readv(10, [{iov_base="", iov_len=2}], 1) = 0 epoll_wait(5, [{EPOLLIN|EPOLLHUP, {u32=14794336, u64=14794336}}], 5, -1) = 1 clock_gettime(CLOCK_BOOTTIME, {tv_sec=17522, tv_nsec=91031855}) = 0 readv(10, [{iov_base="", iov_len=2}], 1) = 0 ...

Environment

None

Activity

Walt Miner 
September 6, 2019 at 8:36 PM

Close for Halibut 8.0.1 release

jose bollo 
August 20, 2019 at 5:31 PM

yes, done. I missed it because it was a cherry-pick. thank you for detecting it.

Jan-Simon Moeller 
August 20, 2019 at 11:37 AM

I see this merged to guppy as well, do we fix it there also ?

Fixed

Details

Assignee

Reporter

Labels

Contract ID

Components

Priority

Created August 20, 2019 at 10:31 AM
Updated September 19, 2019 at 12:07 PM
Resolved August 29, 2019 at 1:58 PM

Flag notifications