{"action":"created","issue":{"url":"https://api.github.com/repos/globalsign/mgo/issues/286","repository_url":"https://api.github.com/repos/globalsign/mgo","labels_url":"https://api.github.com/repos/globalsign/mgo/issues/286/labels{/name}","comments_url":"https://api.github.com/repos/globalsign/mgo/issues/286/comments","events_url":"https://api.github.com/repos/globalsign/mgo/issues/286/events","html_url":"https://github.com/globalsign/mgo/pull/286","id":371441425,"node_id":"MDExOlB1bGxSZXF1ZXN0MjIzODg2MTgx","number":286,"title":"Cleanup txn-queues even for only Asserted documents.","user":{"login":"jameinel","id":202877,"node_id":"MDQ6VXNlcjIwMjg3Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/202877?v=4","gravatar_id":"","url":"https://api.github.com/users/jameinel","html_url":"https://github.com/jameinel","followers_url":"https://api.github.com/users/jameinel/followers","following_url":"https://api.github.com/users/jameinel/following{/other_user}","gists_url":"https://api.github.com/users/jameinel/gists{/gist_id}","starred_url":"https://api.github.com/users/jameinel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jameinel/subscriptions","organizations_url":"https://api.github.com/users/jameinel/orgs","repos_url":"https://api.github.com/users/jameinel/repos","events_url":"https://api.github.com/users/jameinel/events{/privacy}","received_events_url":"https://api.github.com/users/jameinel/received_events","type":"User","site_admin":false},"labels":[{"id":583072767,"node_id":"MDU6TGFiZWw1ODMwNzI3Njc=","url":"https://api.github.com/repos/globalsign/mgo/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2018-10-18T09:32:57Z","updated_at":"2018-11-19T12:18:05Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/globalsign/mgo/pulls/286","html_url":"https://github.com/globalsign/mgo/pull/286","diff_url":"https://github.com/globalsign/mgo/pull/286.diff","patch_url":"https://github.com/globalsign/mgo/pull/286.patch"},"body":"This has a threshold of how many transactions are ready to be removed\r\nfrom the transaction queue. Once we reach that threshold, we go ahead\r\nand update the document, even though it wouldn't require updates\r\notherwise.\r\nIn performance testing, it can be seen that having a document whose\r\nqueue grows too long can significantly impact how long it takes to apply\r\na new transaction. (We have to load the information about all the other\r\ntransactions that asserted against this document, and check if any of\r\nthem need to be applied.)\r\n\r\nAs an example, looping over 600 transactions to be applied, and timing\r\nhow long it takes to apply them with various AssertionCleanupLength\r\ngives:\r\n\r\n  1 1.18s\r\n  2 1.17s\r\n  5 1.28s\r\n 10 1.39s\r\n 20 1.81s\r\n 50 2.94s\r\n100 4.81s\r\n  0 22.99s # unlimited\r\n\r\nSo keeping the queues small significantly impacts transaction speed."},"comment":{"url":"https://api.github.com/repos/globalsign/mgo/issues/comments/439874301","html_url":"https://github.com/globalsign/mgo/pull/286#issuecomment-439874301","issue_url":"https://api.github.com/repos/globalsign/mgo/issues/286","id":439874301,"node_id":"MDEyOklzc3VlQ29tbWVudDQzOTg3NDMwMQ==","user":{"login":"jameinel","id":202877,"node_id":"MDQ6VXNlcjIwMjg3Nw==","avatar_url":"https://avatars0.githubusercontent.com/u/202877?v=4","gravatar_id":"","url":"https://api.github.com/users/jameinel","html_url":"https://github.com/jameinel","followers_url":"https://api.github.com/users/jameinel/followers","following_url":"https://api.github.com/users/jameinel/following{/other_user}","gists_url":"https://api.github.com/users/jameinel/gists{/gist_id}","starred_url":"https://api.github.com/users/jameinel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jameinel/subscriptions","organizations_url":"https://api.github.com/users/jameinel/orgs","repos_url":"https://api.github.com/users/jameinel/repos","events_url":"https://api.github.com/users/jameinel/events{/privacy}","received_events_url":"https://api.github.com/users/jameinel/received_events","type":"User","site_admin":false},"created_at":"2018-11-19T12:18:05Z","updated_at":"2018-11-19T12:18:05Z","author_association":"NONE","body":"Thanks @eminano, looks like I managed to not break the build with the comment fix \\o/"}}
{"actor":{"display_login":"jameinel"}}