{"action":"created","issue":{"url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/2038","repository_url":"https://api.github.com/repos/SpongePowered/SpongeCommon","labels_url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/2038/labels{/name}","comments_url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/2038/comments","events_url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/2038/events","html_url":"https://github.com/SpongePowered/SpongeCommon/issues/2038","id":347135645,"node_id":"MDU6SXNzdWUzNDcxMzU2NDU=","number":2038,"title":"RCON overloads all CPU cores","user":{"login":"limbo-app","id":35357032,"node_id":"MDQ6VXNlcjM1MzU3MDMy","avatar_url":"https://avatars1.githubusercontent.com/u/35357032?v=4","gravatar_id":"","url":"https://api.github.com/users/limbo-app","html_url":"https://github.com/limbo-app","followers_url":"https://api.github.com/users/limbo-app/followers","following_url":"https://api.github.com/users/limbo-app/following{/other_user}","gists_url":"https://api.github.com/users/limbo-app/gists{/gist_id}","starred_url":"https://api.github.com/users/limbo-app/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/limbo-app/subscriptions","organizations_url":"https://api.github.com/users/limbo-app/orgs","repos_url":"https://api.github.com/users/limbo-app/repos","events_url":"https://api.github.com/users/limbo-app/events{/privacy}","received_events_url":"https://api.github.com/users/limbo-app/received_events","type":"User","site_admin":false},"labels":[{"id":201460842,"node_id":"MDU6TGFiZWwyMDE0NjA4NDI=","url":"https://api.github.com/repos/SpongePowered/SpongeCommon/labels/type:%20bug","name":"type: bug","color":"D13641","default":false},{"id":582660039,"node_id":"MDU6TGFiZWw1ODI2NjAwMzk=","url":"https://api.github.com/repos/SpongePowered/SpongeCommon/labels/version:%201.12","name":"version: 1.12","color":"8849a1","default":false}],"state":"closed","locked":false,"assignee":{"login":"dualspiral","id":1904167,"node_id":"MDQ6VXNlcjE5MDQxNjc=","avatar_url":"https://avatars2.githubusercontent.com/u/1904167?v=4","gravatar_id":"","url":"https://api.github.com/users/dualspiral","html_url":"https://github.com/dualspiral","followers_url":"https://api.github.com/users/dualspiral/followers","following_url":"https://api.github.com/users/dualspiral/following{/other_user}","gists_url":"https://api.github.com/users/dualspiral/gists{/gist_id}","starred_url":"https://api.github.com/users/dualspiral/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dualspiral/subscriptions","organizations_url":"https://api.github.com/users/dualspiral/orgs","repos_url":"https://api.github.com/users/dualspiral/repos","events_url":"https://api.github.com/users/dualspiral/events{/privacy}","received_events_url":"https://api.github.com/users/dualspiral/received_events","type":"User","site_admin":false},"assignees":[{"login":"dualspiral","id":1904167,"node_id":"MDQ6VXNlcjE5MDQxNjc=","avatar_url":"https://avatars2.githubusercontent.com/u/1904167?v=4","gravatar_id":"","url":"https://api.github.com/users/dualspiral","html_url":"https://github.com/dualspiral","followers_url":"https://api.github.com/users/dualspiral/followers","following_url":"https://api.github.com/users/dualspiral/following{/other_user}","gists_url":"https://api.github.com/users/dualspiral/gists{/gist_id}","starred_url":"https://api.github.com/users/dualspiral/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dualspiral/subscriptions","organizations_url":"https://api.github.com/users/dualspiral/orgs","repos_url":"https://api.github.com/users/dualspiral/repos","events_url":"https://api.github.com/users/dualspiral/events{/privacy}","received_events_url":"https://api.github.com/users/dualspiral/received_events","type":"User","site_admin":false}],"milestone":null,"comments":16,"created_at":"2018-08-02T19:02:14Z","updated_at":"2018-08-25T13:34:09Z","closed_at":"2018-08-25T13:26:06Z","author_association":"NONE","body":"This issue was originally submitted by @Ewallee in [SpongePowered/SpongeForge#2354](https://github.com/SpongePowered/SpongeForge/issues/2354).\n___\n- SpongeForge version: spongeforge-1.12.2-2705-7.1.0-BETA-3361\r\n- Forge version: 1.12.2-forge1.12.2-14.23.4.2744\r\n- Java version: 8\r\n- Operating System: ubuntu 18.04\r\n\r\n- Plugins/Mods: no mods, no plugins\r\n\r\nEverything works as it should, until I start using RCON(sending messages and commands to servers console)\r\nSteps to reproduce the error:\r\nStart a sponge server 1.12.2 (actually all the latest sponge versions) and start sending messages  with RCON. After ca 10-12 messages/commands all of the servers CPU cores will be overloaded.\r\n\r\nhttps://i.imgur.com/rgrrJ9D.jpg\r\n\r\nThe same happens on Windows:\r\n\r\nhttps://i.imgur.com/0kuXLA2.jpg\r\n\r\nServer log: https://pastebin.com/gSg81faa\r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/comments/415969579","html_url":"https://github.com/SpongePowered/SpongeCommon/issues/2038#issuecomment-415969579","issue_url":"https://api.github.com/repos/SpongePowered/SpongeCommon/issues/2038","id":415969579,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNTk2OTU3OQ==","user":{"login":"dualspiral","id":1904167,"node_id":"MDQ6VXNlcjE5MDQxNjc=","avatar_url":"https://avatars2.githubusercontent.com/u/1904167?v=4","gravatar_id":"","url":"https://api.github.com/users/dualspiral","html_url":"https://github.com/dualspiral","followers_url":"https://api.github.com/users/dualspiral/followers","following_url":"https://api.github.com/users/dualspiral/following{/other_user}","gists_url":"https://api.github.com/users/dualspiral/gists{/gist_id}","starred_url":"https://api.github.com/users/dualspiral/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dualspiral/subscriptions","organizations_url":"https://api.github.com/users/dualspiral/orgs","repos_url":"https://api.github.com/users/dualspiral/repos","events_url":"https://api.github.com/users/dualspiral/events{/privacy}","received_events_url":"https://api.github.com/users/dualspiral/received_events","type":"User","site_admin":false},"created_at":"2018-08-25T13:34:09Z","updated_at":"2018-08-25T13:34:09Z","author_association":"CONTRIBUTOR","body":"Technical explanation: this only started to occur once RCON clients disconnected. We weren't handling the \"end of file\" read properly, so we ended up with infinite loops running for each disconnected RCON client, after four, that'll take up most of the capacity of a quad core CPU, meaning that the server thread competed for time from an RCON thread, and hence, severe TPS losses.\r\n\r\nI put a check in for what happens when an RCON client disconnects and cleaned up our side. It's all OK now, the infinite loop has been averted."}}
{"actor":{"display_login":"dualspiral"}}