{"action":"created","issue":{"url":"https://api.github.com/repos/amplab/tachyon/issues/2130","labels_url":"https://api.github.com/repos/amplab/tachyon/issues/2130/labels{/name}","comments_url":"https://api.github.com/repos/amplab/tachyon/issues/2130/comments","events_url":"https://api.github.com/repos/amplab/tachyon/issues/2130/events","html_url":"https://github.com/amplab/tachyon/pull/2130","id":118106686,"number":2130,"title":"[TACHYON-1332] Switch to using protocol buffers for journaling","user":{"login":"aaudiber","id":3455177,"avatar_url":"https://avatars.githubusercontent.com/u/3455177?v=3","gravatar_id":"","url":"https://api.github.com/users/aaudiber","html_url":"https://github.com/aaudiber","followers_url":"https://api.github.com/users/aaudiber/followers","following_url":"https://api.github.com/users/aaudiber/following{/other_user}","gists_url":"https://api.github.com/users/aaudiber/gists{/gist_id}","starred_url":"https://api.github.com/users/aaudiber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aaudiber/subscriptions","organizations_url":"https://api.github.com/users/aaudiber/orgs","repos_url":"https://api.github.com/users/aaudiber/repos","events_url":"https://api.github.com/users/aaudiber/events{/privacy}","received_events_url":"https://api.github.com/users/aaudiber/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-11-20T19:10:25Z","updated_at":"2015-11-22T18:00:08Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/amplab/tachyon/pulls/2130","html_url":"https://github.com/amplab/tachyon/pull/2130","diff_url":"https://github.com/amplab/tachyon/pull/2130.diff","patch_url":"https://github.com/amplab/tachyon/pull/2130.patch"},"body":"https://tachyon.atlassian.net/browse/TACHYON-1332\r\n\r\nThis PR moves Tachyon from using JSON for journaling to using Protocol Buffers. See the ticket for some reasons to do this. \r\n\r\nThe implementation replaces the JournalEntry interface with `JournalEntryProtos.JournalEntry`. `JournalEntry` is similar to the previous `SerializableJournalEntry`, containing a sequence number and another type of `JournalEntry`. The wrapped messages don't extend `JournalEntry` because Protocol buffers don't support polymorphism.\r\n\r\nAside from the mechanical changes of converting every type of journal entry, this PR also adds `protoGen` as a new command for `bin/tachyon`. You can use it exactly how you would use the current `thriftGen`.\r\n\r\nThe script for converting the binary-formatted journal to a human-readable journal will be in the next PR."},"comment":{"url":"https://api.github.com/repos/amplab/tachyon/issues/comments/158781584","html_url":"https://github.com/amplab/tachyon/pull/2130#issuecomment-158781584","issue_url":"https://api.github.com/repos/amplab/tachyon/issues/2130","id":158781584,"user":{"login":"AmplabJenkins","id":4031291,"avatar_url":"https://avatars.githubusercontent.com/u/4031291?v=3","gravatar_id":"","url":"https://api.github.com/users/AmplabJenkins","html_url":"https://github.com/AmplabJenkins","followers_url":"https://api.github.com/users/AmplabJenkins/followers","following_url":"https://api.github.com/users/AmplabJenkins/following{/other_user}","gists_url":"https://api.github.com/users/AmplabJenkins/gists{/gist_id}","starred_url":"https://api.github.com/users/AmplabJenkins/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/AmplabJenkins/subscriptions","organizations_url":"https://api.github.com/users/AmplabJenkins/orgs","repos_url":"https://api.github.com/users/AmplabJenkins/repos","events_url":"https://api.github.com/users/AmplabJenkins/events{/privacy}","received_events_url":"https://api.github.com/users/AmplabJenkins/received_events","type":"User","site_admin":false},"created_at":"2015-11-22T18:00:08Z","updated_at":"2015-11-22T18:00:08Z","body":"Test PASSed.\nRefer to this link for build results (access rights to CI server needed): \nhttps://amplab.cs.berkeley.edu/jenkins//job/Tachyon-Pull-Request-Builder/6978/\nTest PASSed."}}