{"action":"created","issue":{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/16100","labels_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/16100/labels{/name}","comments_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/16100/comments","events_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/16100/events","html_url":"https://github.com/TrinityCore/TrinityCore/issues/16100","id":123889646,"number":16100,"title":"Boost socket keeps ESTABLISHED connection forever","user":{"login":"killradio","id":185102,"avatar_url":"https://avatars.githubusercontent.com/u/185102?v=3","gravatar_id":"","url":"https://api.github.com/users/killradio","html_url":"https://github.com/killradio","followers_url":"https://api.github.com/users/killradio/followers","following_url":"https://api.github.com/users/killradio/following{/other_user}","gists_url":"https://api.github.com/users/killradio/gists{/gist_id}","starred_url":"https://api.github.com/users/killradio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/killradio/subscriptions","organizations_url":"https://api.github.com/users/killradio/orgs","repos_url":"https://api.github.com/users/killradio/repos","events_url":"https://api.github.com/users/killradio/events{/privacy}","received_events_url":"https://api.github.com/users/killradio/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/labels/Invalid-IncompleteData/NotTrinityCore","name":"Invalid-IncompleteData/NotTrinityCore","color":"fbca04"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-12-25T16:40:54Z","updated_at":"2015-12-25T18:10:24Z","closed_at":"2015-12-25T17:55:19Z","body":"Rev: https://github.com/TrinityCore/TrinityCore/commit/347373264b4ca5046af5c23378117e6ddb66504d\r\nboost v1.54\r\nUbuntu 14.04 x64\r\n\r\nProblem: Boost socket keeps ESTABLISHED connection forever. This happened to me with authserver - about 100-120 dead connections with ESTABLISHED state from 3-4 users after 1 month uptime. Only chance to close these connections is to shutdown authserver.\r\n\r\nSimple way to reproduce:\r\n1. Authenticate, but do not select character.\r\n2. Wait till wow client disconnects.\r\n3. netstat -tapn | grep 3724 -- your connection now here forever."},"comment":{"url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/comments/167255893","html_url":"https://github.com/TrinityCore/TrinityCore/issues/16100#issuecomment-167255893","issue_url":"https://api.github.com/repos/TrinityCore/TrinityCore/issues/16100","id":167255893,"user":{"login":"DDuarte","id":530940,"avatar_url":"https://avatars.githubusercontent.com/u/530940?v=3","gravatar_id":"","url":"https://api.github.com/users/DDuarte","html_url":"https://github.com/DDuarte","followers_url":"https://api.github.com/users/DDuarte/followers","following_url":"https://api.github.com/users/DDuarte/following{/other_user}","gists_url":"https://api.github.com/users/DDuarte/gists{/gist_id}","starred_url":"https://api.github.com/users/DDuarte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DDuarte/subscriptions","organizations_url":"https://api.github.com/users/DDuarte/orgs","repos_url":"https://api.github.com/users/DDuarte/repos","events_url":"https://api.github.com/users/DDuarte/events{/privacy}","received_events_url":"https://api.github.com/users/DDuarte/received_events","type":"User","site_admin":false},"created_at":"2015-12-25T18:10:24Z","updated_at":"2015-12-25T18:10:24Z","body":"Hard to consider this a bug in Boost and even if it is, it's a problem with TC and something must be done regarding it.\r\n\r\nQuotes from the linked StackOverflow topic:\r\n\r\n>  so the best thing is always to implement your own heartbeat scheme, or just bind a timestamp to the last-read operation on a socket, and abort any socket that expires the timeout\r\n\r\n---\r\n\r\n> if you do not force a read on the socket, even the keepalive expired, you'll never get a disconnection"}}