{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/corefx/issues/31751","repository_url":"https://api.github.com/repos/dotnet/corefx","labels_url":"https://api.github.com/repos/dotnet/corefx/issues/31751/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/corefx/issues/31751/comments","events_url":"https://api.github.com/repos/dotnet/corefx/issues/31751/events","html_url":"https://github.com/dotnet/corefx/issues/31751","id":350228287,"node_id":"MDU6SXNzdWUzNTAyMjgyODc=","number":31751,"title":"HTTP2: Huffman decoding implementation is inefficient","user":{"login":"geoffkizer","id":12518809,"node_id":"MDQ6VXNlcjEyNTE4ODA5","avatar_url":"https://avatars2.githubusercontent.com/u/12518809?v=4","gravatar_id":"","url":"https://api.github.com/users/geoffkizer","html_url":"https://github.com/geoffkizer","followers_url":"https://api.github.com/users/geoffkizer/followers","following_url":"https://api.github.com/users/geoffkizer/following{/other_user}","gists_url":"https://api.github.com/users/geoffkizer/gists{/gist_id}","starred_url":"https://api.github.com/users/geoffkizer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geoffkizer/subscriptions","organizations_url":"https://api.github.com/users/geoffkizer/orgs","repos_url":"https://api.github.com/users/geoffkizer/repos","events_url":"https://api.github.com/users/geoffkizer/events{/privacy}","received_events_url":"https://api.github.com/users/geoffkizer/received_events","type":"User","site_admin":false},"labels":[{"id":809472144,"node_id":"MDU6TGFiZWw4MDk0NzIxNDQ=","url":"https://api.github.com/repos/dotnet/corefx/labels/area-System.Net.Http.SocketsHttpHandler","name":"area-System.Net.Http.SocketsHttpHandler","color":"d4c5f9","default":false},{"id":145399957,"node_id":"MDU6TGFiZWwxNDUzOTk5NTc=","url":"https://api.github.com/repos/dotnet/corefx/labels/enhancement","name":"enhancement","color":"207de5","default":true},{"id":153500238,"node_id":"MDU6TGFiZWwxNTM1MDAyMzg=","url":"https://api.github.com/repos/dotnet/corefx/labels/tenet-performance","name":"tenet-performance","color":"c2e0c6","default":false},{"id":145399958,"node_id":"MDU6TGFiZWwxNDUzOTk5NTg=","url":"https://api.github.com/repos/dotnet/corefx/labels/up-for-grabs","name":"up-for-grabs","color":"159818","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/dotnet/corefx/milestones/23","html_url":"https://github.com/dotnet/corefx/milestone/23","labels_url":"https://api.github.com/repos/dotnet/corefx/milestones/23/labels","id":3393718,"node_id":"MDk6TWlsZXN0b25lMzM5MzcxOA==","number":23,"title":"2.2","description":null,"creator":{"login":"terrajobst","id":5169960,"node_id":"MDQ6VXNlcjUxNjk5NjA=","avatar_url":"https://avatars0.githubusercontent.com/u/5169960?v=4","gravatar_id":"","url":"https://api.github.com/users/terrajobst","html_url":"https://github.com/terrajobst","followers_url":"https://api.github.com/users/terrajobst/followers","following_url":"https://api.github.com/users/terrajobst/following{/other_user}","gists_url":"https://api.github.com/users/terrajobst/gists{/gist_id}","starred_url":"https://api.github.com/users/terrajobst/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/terrajobst/subscriptions","organizations_url":"https://api.github.com/users/terrajobst/orgs","repos_url":"https://api.github.com/users/terrajobst/repos","events_url":"https://api.github.com/users/terrajobst/events{/privacy}","received_events_url":"https://api.github.com/users/terrajobst/received_events","type":"User","site_admin":false},"open_issues":31,"closed_issues":33,"state":"open","created_at":"2018-06-01T16:19:52Z","updated_at":"2018-08-29T22:12:03Z","due_on":null,"closed_at":null},"comments":23,"created_at":"2018-08-13T23:24:23Z","updated_at":"2018-08-31T00:53:33Z","closed_at":null,"author_association":"MEMBER","body":"We are currently implementing Huffman decoding by looping over a table with a list of encoded values for each length.  (See Huffman.cs)\r\n\r\nThis doesn't seem particularly efficient.\r\n\r\nInstead, we should implement Huffman decoding by doing table lookups, using keys of 8 bits or something along those lines. \r\n\r\nNote that Huffman encoding from servers seems to be pretty common, so this may have real-world perf impact. (Or maybe not... as always, measuring is the best way to know.)"},"comment":{"url":"https://api.github.com/repos/dotnet/corefx/issues/comments/417514845","html_url":"https://github.com/dotnet/corefx/issues/31751#issuecomment-417514845","issue_url":"https://api.github.com/repos/dotnet/corefx/issues/31751","id":417514845,"node_id":"MDEyOklzc3VlQ29tbWVudDQxNzUxNDg0NQ==","user":{"login":"geoffkizer","id":12518809,"node_id":"MDQ6VXNlcjEyNTE4ODA5","avatar_url":"https://avatars2.githubusercontent.com/u/12518809?v=4","gravatar_id":"","url":"https://api.github.com/users/geoffkizer","html_url":"https://github.com/geoffkizer","followers_url":"https://api.github.com/users/geoffkizer/followers","following_url":"https://api.github.com/users/geoffkizer/following{/other_user}","gists_url":"https://api.github.com/users/geoffkizer/gists{/gist_id}","starred_url":"https://api.github.com/users/geoffkizer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/geoffkizer/subscriptions","organizations_url":"https://api.github.com/users/geoffkizer/orgs","repos_url":"https://api.github.com/users/geoffkizer/repos","events_url":"https://api.github.com/users/geoffkizer/events{/privacy}","received_events_url":"https://api.github.com/users/geoffkizer/received_events","type":"User","site_admin":false},"created_at":"2018-08-31T00:53:33Z","updated_at":"2018-08-31T00:53:33Z","author_association":"MEMBER","body":"Thanks for posting the code.\r\n\r\nDon't use a dictionary for the table lookup. Just use an array. It's much cheaper."}}
{"actor":{"display_login":"geoffkizer"}}