{"action":"created","comment":{"url":"https://api.github.com/repos/cmu-db/peloton/pulls/comments/75411662","id":75411662,"diff_hunk":"@@ -148,31 +144,22 @@ class TileGroupHeader : public Printable {\n     return *((ItemPointer *)(TUPLE_HEADER_LOCATION + prev_pointer_offset));\n   }\n \n+  inline ItemPointer * GetIndirection(const oid_t &tuple_slot_id) const {\n+    return *(ItemPointer **)(TUPLE_HEADER_LOCATION + indirection_offset);\n+  }\n+\n   // constraint: at most 24 bytes.\n   inline char *GetReservedFieldRef(const oid_t &tuple_slot_id) const {\n     return (char *)(TUPLE_HEADER_LOCATION + reserved_field_offset);\n   }\n \n-  inline bool GetInsertCommit(const oid_t &tuple_slot_id) const {\n-    return *((bool *)(TUPLE_HEADER_LOCATION + insert_commit_offset));\n-  }\n-\n-  inline bool GetDeleteCommit(const oid_t &tuple_slot_id) const {\n-    return *((bool *)(TUPLE_HEADER_LOCATION + delete_commit_offset));\n-  }\n-\n-  // used only by occ_rb_txn_manager\n-  inline char *GetPrevItempointerField(const oid_t &tuple_slot_id) const {\n-    return (char *)(TUPLE_HEADER_LOCATION + prev_pointer_offset);\n-  }\n-\n   // Setters\n \n   inline void SetTileGroup(TileGroup *tile_group) {\n     this->tile_group = tile_group;\n   }\n   inline void SetTransactionId(const oid_t &tuple_slot_id,\n-                               const txn_id_t &transaction_id) {\n+                               const txn_id_t &transaction_id) const {","path":"src/include/storage/tile_group_header.h","position":77,"original_position":59,"commit_id":"22ad7e652902ecaa4d0f03efdf06d05e94e373be","original_commit_id":"46aafc5db8b0bf36a2fcb8ccbb5176afe7c4738d","user":{"login":"yingjunwu","id":15974918,"avatar_url":"https://avatars.githubusercontent.com/u/15974918?v=3","gravatar_id":"","url":"https://api.github.com/users/yingjunwu","html_url":"https://github.com/yingjunwu","followers_url":"https://api.github.com/users/yingjunwu/followers","following_url":"https://api.github.com/users/yingjunwu/following{/other_user}","gists_url":"https://api.github.com/users/yingjunwu/gists{/gist_id}","starred_url":"https://api.github.com/users/yingjunwu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yingjunwu/subscriptions","organizations_url":"https://api.github.com/users/yingjunwu/orgs","repos_url":"https://api.github.com/users/yingjunwu/repos","events_url":"https://api.github.com/users/yingjunwu/events{/privacy}","received_events_url":"https://api.github.com/users/yingjunwu/received_events","type":"User","site_admin":false},"body":"because we use memcpy, and the address space is not changed.","created_at":"2016-08-19T00:18:59Z","updated_at":"2016-08-19T00:18:59Z","html_url":"https://github.com/cmu-db/peloton/pull/206#discussion_r75411662","pull_request_url":"https://api.github.com/repos/cmu-db/peloton/pulls/206","_links":{"self":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/comments/75411662"},"html":{"href":"https://github.com/cmu-db/peloton/pull/206#discussion_r75411662"},"pull_request":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/206"}}},"pull_request":{"url":"https://api.github.com/repos/cmu-db/peloton/pulls/206","id":81566071,"html_url":"https://github.com/cmu-db/peloton/pull/206","diff_url":"https://github.com/cmu-db/peloton/pull/206.diff","patch_url":"https://github.com/cmu-db/peloton/pull/206.patch","issue_url":"https://api.github.com/repos/cmu-db/peloton/issues/206","number":206,"state":"open","locked":false,"title":"port new transaction and storage layers","user":{"login":"yingjunwu","id":15974918,"avatar_url":"https://avatars.githubusercontent.com/u/15974918?v=3","gravatar_id":"","url":"https://api.github.com/users/yingjunwu","html_url":"https://github.com/yingjunwu","followers_url":"https://api.github.com/users/yingjunwu/followers","following_url":"https://api.github.com/users/yingjunwu/following{/other_user}","gists_url":"https://api.github.com/users/yingjunwu/gists{/gist_id}","starred_url":"https://api.github.com/users/yingjunwu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yingjunwu/subscriptions","organizations_url":"https://api.github.com/users/yingjunwu/orgs","repos_url":"https://api.github.com/users/yingjunwu/repos","events_url":"https://api.github.com/users/yingjunwu/events{/privacy}","received_events_url":"https://api.github.com/users/yingjunwu/received_events","type":"User","site_admin":false},"body":"This PR contains:\r\n1. new timestamp ordering protocol;\r\n2. append-only storage with newest-to-oldest version chain ordering;\r\n3. logical pointer secondary index scheme;\r\n4. scalable tile group allocation.\r\n\r\nNOTE:\r\n1. We have passed all the tests with bwtree enabled. Btree and skiplist are not tested yet.\r\n2. All kinds of counters (e.g., number of tuples in a tile group, number of visible tuples in a tile group) are in a mess. Should be fixed at certain time point.\r\n\r\nTODO:\r\n1. will support ~~scalable memory allocation and~~ transaction-level GC by the end of the day (delayed);\r\n2. ~~this PR does NOT support hybrid_index_test and write_behind_logging_test. Seems that the current version of Peloton does not support these two features, and I also do not understand the meaning of these two test cases;~~ this PR have passed all the test cases with number of cached tile groups set to 1. However, currently we still need to modify test cases to support scalable tile group allocation;\r\n3. ~~remove redundant code and add comments.~~ ","created_at":"2016-08-17T00:12:08Z","updated_at":"2016-08-19T00:18:59Z","closed_at":null,"merged_at":null,"merge_commit_sha":"93993706ab9d3acd8b5bb42fa19ef9d1623760d7","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/cmu-db/peloton/pulls/206/commits","review_comments_url":"https://api.github.com/repos/cmu-db/peloton/pulls/206/comments","review_comment_url":"https://api.github.com/repos/cmu-db/peloton/pulls/comments{/number}","comments_url":"https://api.github.com/repos/cmu-db/peloton/issues/206/comments","statuses_url":"https://api.github.com/repos/cmu-db/peloton/statuses/22ad7e652902ecaa4d0f03efdf06d05e94e373be","head":{"label":"yingjunwu:master","ref":"master","sha":"22ad7e652902ecaa4d0f03efdf06d05e94e373be","user":{"login":"yingjunwu","id":15974918,"avatar_url":"https://avatars.githubusercontent.com/u/15974918?v=3","gravatar_id":"","url":"https://api.github.com/users/yingjunwu","html_url":"https://github.com/yingjunwu","followers_url":"https://api.github.com/users/yingjunwu/followers","following_url":"https://api.github.com/users/yingjunwu/following{/other_user}","gists_url":"https://api.github.com/users/yingjunwu/gists{/gist_id}","starred_url":"https://api.github.com/users/yingjunwu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yingjunwu/subscriptions","organizations_url":"https://api.github.com/users/yingjunwu/orgs","repos_url":"https://api.github.com/users/yingjunwu/repos","events_url":"https://api.github.com/users/yingjunwu/events{/privacy}","received_events_url":"https://api.github.com/users/yingjunwu/received_events","type":"User","site_admin":false},"repo":{"id":53145670,"name":"peloton","full_name":"yingjunwu/peloton","owner":{"login":"yingjunwu","id":15974918,"avatar_url":"https://avatars.githubusercontent.com/u/15974918?v=3","gravatar_id":"","url":"https://api.github.com/users/yingjunwu","html_url":"https://github.com/yingjunwu","followers_url":"https://api.github.com/users/yingjunwu/followers","following_url":"https://api.github.com/users/yingjunwu/following{/other_user}","gists_url":"https://api.github.com/users/yingjunwu/gists{/gist_id}","starred_url":"https://api.github.com/users/yingjunwu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yingjunwu/subscriptions","organizations_url":"https://api.github.com/users/yingjunwu/orgs","repos_url":"https://api.github.com/users/yingjunwu/repos","events_url":"https://api.github.com/users/yingjunwu/events{/privacy}","received_events_url":"https://api.github.com/users/yingjunwu/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/yingjunwu/peloton","description":"Street Strength Database Management System for Real-Time Analytics","fork":true,"url":"https://api.github.com/repos/yingjunwu/peloton","forks_url":"https://api.github.com/repos/yingjunwu/peloton/forks","keys_url":"https://api.github.com/repos/yingjunwu/peloton/keys{/key_id}","collaborators_url":"https://api.github.com/repos/yingjunwu/peloton/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/yingjunwu/peloton/teams","hooks_url":"https://api.github.com/repos/yingjunwu/peloton/hooks","issue_events_url":"https://api.github.com/repos/yingjunwu/peloton/issues/events{/number}","events_url":"https://api.github.com/repos/yingjunwu/peloton/events","assignees_url":"https://api.github.com/repos/yingjunwu/peloton/assignees{/user}","branches_url":"https://api.github.com/repos/yingjunwu/peloton/branches{/branch}","tags_url":"https://api.github.com/repos/yingjunwu/peloton/tags","blobs_url":"https://api.github.com/repos/yingjunwu/peloton/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/yingjunwu/peloton/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/yingjunwu/peloton/git/refs{/sha}","trees_url":"https://api.github.com/repos/yingjunwu/peloton/git/trees{/sha}","statuses_url":"https://api.github.com/repos/yingjunwu/peloton/statuses/{sha}","languages_url":"https://api.github.com/repos/yingjunwu/peloton/languages","stargazers_url":"https://api.github.com/repos/yingjunwu/peloton/stargazers","contributors_url":"https://api.github.com/repos/yingjunwu/peloton/contributors","subscribers_url":"https://api.github.com/repos/yingjunwu/peloton/subscribers","subscription_url":"https://api.github.com/repos/yingjunwu/peloton/subscription","commits_url":"https://api.github.com/repos/yingjunwu/peloton/commits{/sha}","git_commits_url":"https://api.github.com/repos/yingjunwu/peloton/git/commits{/sha}","comments_url":"https://api.github.com/repos/yingjunwu/peloton/comments{/number}","issue_comment_url":"https://api.github.com/repos/yingjunwu/peloton/issues/comments{/number}","contents_url":"https://api.github.com/repos/yingjunwu/peloton/contents/{+path}","compare_url":"https://api.github.com/repos/yingjunwu/peloton/compare/{base}...{head}","merges_url":"https://api.github.com/repos/yingjunwu/peloton/merges","archive_url":"https://api.github.com/repos/yingjunwu/peloton/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/yingjunwu/peloton/downloads","issues_url":"https://api.github.com/repos/yingjunwu/peloton/issues{/number}","pulls_url":"https://api.github.com/repos/yingjunwu/peloton/pulls{/number}","milestones_url":"https://api.github.com/repos/yingjunwu/peloton/milestones{/number}","notifications_url":"https://api.github.com/repos/yingjunwu/peloton/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/yingjunwu/peloton/labels{/name}","releases_url":"https://api.github.com/repos/yingjunwu/peloton/releases{/id}","deployments_url":"https://api.github.com/repos/yingjunwu/peloton/deployments","created_at":"2016-03-04T15:39:38Z","updated_at":"2016-03-04T15:39:47Z","pushed_at":"2016-08-19T00:15:56Z","git_url":"git://github.com/yingjunwu/peloton.git","ssh_url":"git@github.com:yingjunwu/peloton.git","clone_url":"https://github.com/yingjunwu/peloton.git","svn_url":"https://github.com/yingjunwu/peloton","homepage":"http://pelotondb.org","size":56823,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":3,"mirror_url":null,"open_issues_count":0,"forks":3,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"cmu-db:master","ref":"master","sha":"7aa914aff1418f6273f69391b7f21eb34e706c6b","user":{"login":"cmu-db","id":6220241,"avatar_url":"https://avatars.githubusercontent.com/u/6220241?v=3","gravatar_id":"","url":"https://api.github.com/users/cmu-db","html_url":"https://github.com/cmu-db","followers_url":"https://api.github.com/users/cmu-db/followers","following_url":"https://api.github.com/users/cmu-db/following{/other_user}","gists_url":"https://api.github.com/users/cmu-db/gists{/gist_id}","starred_url":"https://api.github.com/users/cmu-db/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmu-db/subscriptions","organizations_url":"https://api.github.com/users/cmu-db/orgs","repos_url":"https://api.github.com/users/cmu-db/repos","events_url":"https://api.github.com/users/cmu-db/events{/privacy}","received_events_url":"https://api.github.com/users/cmu-db/received_events","type":"Organization","site_admin":false},"repo":{"id":28202609,"name":"peloton","full_name":"cmu-db/peloton","owner":{"login":"cmu-db","id":6220241,"avatar_url":"https://avatars.githubusercontent.com/u/6220241?v=3","gravatar_id":"","url":"https://api.github.com/users/cmu-db","html_url":"https://github.com/cmu-db","followers_url":"https://api.github.com/users/cmu-db/followers","following_url":"https://api.github.com/users/cmu-db/following{/other_user}","gists_url":"https://api.github.com/users/cmu-db/gists{/gist_id}","starred_url":"https://api.github.com/users/cmu-db/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmu-db/subscriptions","organizations_url":"https://api.github.com/users/cmu-db/orgs","repos_url":"https://api.github.com/users/cmu-db/repos","events_url":"https://api.github.com/users/cmu-db/events{/privacy}","received_events_url":"https://api.github.com/users/cmu-db/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/cmu-db/peloton","description":"The Self-Driving Database Management System","fork":false,"url":"https://api.github.com/repos/cmu-db/peloton","forks_url":"https://api.github.com/repos/cmu-db/peloton/forks","keys_url":"https://api.github.com/repos/cmu-db/peloton/keys{/key_id}","collaborators_url":"https://api.github.com/repos/cmu-db/peloton/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/cmu-db/peloton/teams","hooks_url":"https://api.github.com/repos/cmu-db/peloton/hooks","issue_events_url":"https://api.github.com/repos/cmu-db/peloton/issues/events{/number}","events_url":"https://api.github.com/repos/cmu-db/peloton/events","assignees_url":"https://api.github.com/repos/cmu-db/peloton/assignees{/user}","branches_url":"https://api.github.com/repos/cmu-db/peloton/branches{/branch}","tags_url":"https://api.github.com/repos/cmu-db/peloton/tags","blobs_url":"https://api.github.com/repos/cmu-db/peloton/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/cmu-db/peloton/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/cmu-db/peloton/git/refs{/sha}","trees_url":"https://api.github.com/repos/cmu-db/peloton/git/trees{/sha}","statuses_url":"https://api.github.com/repos/cmu-db/peloton/statuses/{sha}","languages_url":"https://api.github.com/repos/cmu-db/peloton/languages","stargazers_url":"https://api.github.com/repos/cmu-db/peloton/stargazers","contributors_url":"https://api.github.com/repos/cmu-db/peloton/contributors","subscribers_url":"https://api.github.com/repos/cmu-db/peloton/subscribers","subscription_url":"https://api.github.com/repos/cmu-db/peloton/subscription","commits_url":"https://api.github.com/repos/cmu-db/peloton/commits{/sha}","git_commits_url":"https://api.github.com/repos/cmu-db/peloton/git/commits{/sha}","comments_url":"https://api.github.com/repos/cmu-db/peloton/comments{/number}","issue_comment_url":"https://api.github.com/repos/cmu-db/peloton/issues/comments{/number}","contents_url":"https://api.github.com/repos/cmu-db/peloton/contents/{+path}","compare_url":"https://api.github.com/repos/cmu-db/peloton/compare/{base}...{head}","merges_url":"https://api.github.com/repos/cmu-db/peloton/merges","archive_url":"https://api.github.com/repos/cmu-db/peloton/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/cmu-db/peloton/downloads","issues_url":"https://api.github.com/repos/cmu-db/peloton/issues{/number}","pulls_url":"https://api.github.com/repos/cmu-db/peloton/pulls{/number}","milestones_url":"https://api.github.com/repos/cmu-db/peloton/milestones{/number}","notifications_url":"https://api.github.com/repos/cmu-db/peloton/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/cmu-db/peloton/labels{/name}","releases_url":"https://api.github.com/repos/cmu-db/peloton/releases{/id}","deployments_url":"https://api.github.com/repos/cmu-db/peloton/deployments","created_at":"2014-12-18T21:35:23Z","updated_at":"2016-08-16T10:31:54Z","pushed_at":"2016-08-19T00:15:56Z","git_url":"git://github.com/cmu-db/peloton.git","ssh_url":"git@github.com:cmu-db/peloton.git","clone_url":"https://github.com/cmu-db/peloton.git","svn_url":"https://github.com/cmu-db/peloton","homepage":"http://pelotondb.org","size":74826,"stargazers_count":123,"watchers_count":123,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":87,"mirror_url":null,"open_issues_count":16,"forks":87,"open_issues":16,"watchers":123,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/206"},"html":{"href":"https://github.com/cmu-db/peloton/pull/206"},"issue":{"href":"https://api.github.com/repos/cmu-db/peloton/issues/206"},"comments":{"href":"https://api.github.com/repos/cmu-db/peloton/issues/206/comments"},"review_comments":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/206/comments"},"review_comment":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/cmu-db/peloton/pulls/206/commits"},"statuses":{"href":"https://api.github.com/repos/cmu-db/peloton/statuses/22ad7e652902ecaa4d0f03efdf06d05e94e373be"}}}}
{"actor":{"display_login":"yingjunwu"}}