{"action":"created","issue":{"url":"https://api.github.com/repos/pmem/pmdk/issues/3113","repository_url":"https://api.github.com/repos/pmem/pmdk","labels_url":"https://api.github.com/repos/pmem/pmdk/issues/3113/labels{/name}","comments_url":"https://api.github.com/repos/pmem/pmdk/issues/3113/comments","events_url":"https://api.github.com/repos/pmem/pmdk/issues/3113/events","html_url":"https://github.com/pmem/pmdk/pull/3113","id":347902468,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA2MzgyNDI1","number":3113,"title":"obj: change redo logs to offset-based entries","user":{"login":"pbalcer","id":8775610,"node_id":"MDQ6VXNlcjg3NzU2MTA=","avatar_url":"https://avatars1.githubusercontent.com/u/8775610?v=4","gravatar_id":"","url":"https://api.github.com/users/pbalcer","html_url":"https://github.com/pbalcer","followers_url":"https://api.github.com/users/pbalcer/followers","following_url":"https://api.github.com/users/pbalcer/following{/other_user}","gists_url":"https://api.github.com/users/pbalcer/gists{/gist_id}","starred_url":"https://api.github.com/users/pbalcer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbalcer/subscriptions","organizations_url":"https://api.github.com/users/pbalcer/orgs","repos_url":"https://api.github.com/users/pbalcer/repos","events_url":"https://api.github.com/users/pbalcer/events{/privacy}","received_events_url":"https://api.github.com/users/pbalcer/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2018-08-06T12:27:24Z","updated_at":"2018-09-10T12:36:36Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/pmem/pmdk/pulls/3113","html_url":"https://github.com/pmem/pmdk/pull/3113","diff_url":"https://github.com/pmem/pmdk/pull/3113.diff","patch_url":"https://github.com/pmem/pmdk/pull/3113.patch"},"body":"This patch changes the redo log algorithm to use a variably-sized\r\nbyte buffer with entries (similarly to how it's done for undo logs)\r\ninstead of having a fixed number of entries per redo log. While\r\nthe new code is more flexible and allows for logs larger than\r\n8 bytes, it also has the downside of being more complicated to\r\nuse - we no longer have access to array of entries.\r\n\r\nOne of the consequences of this change is the removal of 'nentries'\r\ncounter in the redo log metadata. From now on, the stopping criteria\r\nfor iterating over entries is whether or not the next entry offset\r\nis zero. To make this work, when storing/creating logs the algorithm\r\nwrites zeroes to a cacheline ahead of the actual log.\n\n<!-- Reviewable:start -->\n---\nThis change is [<img src=\"https://reviewable.io/review_button.svg\" height=\"34\" align=\"absmiddle\" alt=\"Reviewable\"/>](https://reviewable.io/reviews/pmem/pmdk/3113)\n<!-- Reviewable:end -->\n"},"comment":{"url":"https://api.github.com/repos/pmem/pmdk/issues/comments/419897162","html_url":"https://github.com/pmem/pmdk/pull/3113#issuecomment-419897162","issue_url":"https://api.github.com/repos/pmem/pmdk/issues/3113","id":419897162,"node_id":"MDEyOklzc3VlQ29tbWVudDQxOTg5NzE2Mg==","user":{"login":"pbalcer","id":8775610,"node_id":"MDQ6VXNlcjg3NzU2MTA=","avatar_url":"https://avatars1.githubusercontent.com/u/8775610?v=4","gravatar_id":"","url":"https://api.github.com/users/pbalcer","html_url":"https://github.com/pbalcer","followers_url":"https://api.github.com/users/pbalcer/followers","following_url":"https://api.github.com/users/pbalcer/following{/other_user}","gists_url":"https://api.github.com/users/pbalcer/gists{/gist_id}","starred_url":"https://api.github.com/users/pbalcer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pbalcer/subscriptions","organizations_url":"https://api.github.com/users/pbalcer/orgs","repos_url":"https://api.github.com/users/pbalcer/repos","events_url":"https://api.github.com/users/pbalcer/events{/privacy}","received_events_url":"https://api.github.com/users/pbalcer/received_events","type":"User","site_admin":false},"created_at":"2018-09-10T12:36:36Z","updated_at":"2018-09-10T12:36:36Z","author_association":"CONTRIBUTOR","body":"This and #3149 are almost impossible to rebase separately. I've fixed the things @marcinslusarz wanted by but I can't commit them without the next PR breaking significantly. This is mostly because I renamed redo to ulog and git didn't consider that a rename but rather delete/add - so rebasing is effectively a manual work.\r\nGiven that this patch makes no sense without the followup in #3149, I'll apply all the review changes there directly, instead of doing them twice."}}
{"actor":{"display_login":"pbalcer"}}