{"action":"created","issue":{"url":"https://api.github.com/repos/grpc/grpc-java/issues/1989","repository_url":"https://api.github.com/repos/grpc/grpc-java","labels_url":"https://api.github.com/repos/grpc/grpc-java/issues/1989/labels{/name}","comments_url":"https://api.github.com/repos/grpc/grpc-java/issues/1989/comments","events_url":"https://api.github.com/repos/grpc/grpc-java/issues/1989/events","html_url":"https://github.com/grpc/grpc-java/pull/1989","id":162575804,"number":1989,"title":"netty: improve flushing and object allocations in write queue.","user":{"login":"buchgr","id":1388179,"avatar_url":"https://avatars.githubusercontent.com/u/1388179?v=3","gravatar_id":"","url":"https://api.github.com/users/buchgr","html_url":"https://github.com/buchgr","followers_url":"https://api.github.com/users/buchgr/followers","following_url":"https://api.github.com/users/buchgr/following{/other_user}","gists_url":"https://api.github.com/users/buchgr/gists{/gist_id}","starred_url":"https://api.github.com/users/buchgr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/buchgr/subscriptions","organizations_url":"https://api.github.com/users/buchgr/orgs","repos_url":"https://api.github.com/users/buchgr/repos","events_url":"https://api.github.com/users/buchgr/events{/privacy}","received_events_url":"https://api.github.com/users/buchgr/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2016-06-28T00:11:28Z","updated_at":"2016-06-29T13:53:14Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/grpc/grpc-java/pulls/1989","html_url":"https://github.com/grpc/grpc-java/pull/1989","diff_url":"https://github.com/grpc/grpc-java/pull/1989.diff","patch_url":"https://github.com/grpc/grpc-java/pull/1989.patch"},"body":"This PR contains two separate changes:\r\n1. Instead of flushing every 128 writes, we now (effectively) only flush after having written every element in the write queue. This will allow us to better utilize gathering write system calls (e.g. on Linux `writev` can write 1024 buffers per default). This change only affects [WriteQueue.flush()](https://github.com/grpc/grpc-java/compare/master...buchgr:writequeue?expand=1#diff-0ff32fc8755ff668c8abe5f0da6fe59aR131).\r\n2. Merge all the command objects with `QueuedCommand` so to save one object allocation per write.\r\n\r\nI ll add some more tests tomorrow."},"comment":{"url":"https://api.github.com/repos/grpc/grpc-java/issues/comments/229362361","html_url":"https://github.com/grpc/grpc-java/pull/1989#issuecomment-229362361","issue_url":"https://api.github.com/repos/grpc/grpc-java/issues/1989","id":229362361,"user":{"login":"buchgr","id":1388179,"avatar_url":"https://avatars.githubusercontent.com/u/1388179?v=3","gravatar_id":"","url":"https://api.github.com/users/buchgr","html_url":"https://github.com/buchgr","followers_url":"https://api.github.com/users/buchgr/followers","following_url":"https://api.github.com/users/buchgr/following{/other_user}","gists_url":"https://api.github.com/users/buchgr/gists{/gist_id}","starred_url":"https://api.github.com/users/buchgr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/buchgr/subscriptions","organizations_url":"https://api.github.com/users/buchgr/orgs","repos_url":"https://api.github.com/users/buchgr/repos","events_url":"https://api.github.com/users/buchgr/events{/privacy}","received_events_url":"https://api.github.com/users/buchgr/received_events","type":"User","site_admin":false},"created_at":"2016-06-29T13:53:13Z","updated_at":"2016-06-29T13:53:13Z","body":"PTAL"}}
{"actor":{"display_login":"buchgr"}}