{"action":"created","issue":{"url":"https://api.github.com/repos/Tribler/tribler/issues/1843","repository_url":"https://api.github.com/repos/Tribler/tribler","labels_url":"https://api.github.com/repos/Tribler/tribler/issues/1843/labels{/name}","comments_url":"https://api.github.com/repos/Tribler/tribler/issues/1843/comments","events_url":"https://api.github.com/repos/Tribler/tribler/issues/1843/events","html_url":"https://github.com/Tribler/tribler/pull/1843","id":124951941,"number":1843,"title":"WIP: Multichain","user":{"login":"pimveldhuisen","id":3043834,"avatar_url":"https://avatars.githubusercontent.com/u/3043834?v=3","gravatar_id":"","url":"https://api.github.com/users/pimveldhuisen","html_url":"https://github.com/pimveldhuisen","followers_url":"https://api.github.com/users/pimveldhuisen/followers","following_url":"https://api.github.com/users/pimveldhuisen/following{/other_user}","gists_url":"https://api.github.com/users/pimveldhuisen/gists{/gist_id}","starred_url":"https://api.github.com/users/pimveldhuisen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pimveldhuisen/subscriptions","organizations_url":"https://api.github.com/users/pimveldhuisen/orgs","repos_url":"https://api.github.com/users/pimveldhuisen/repos","events_url":"https://api.github.com/users/pimveldhuisen/events{/privacy}","received_events_url":"https://api.github.com/users/pimveldhuisen/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Tribler/tribler/labels/WIP","name":"WIP","color":"ab6420"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":28,"created_at":"2016-01-05T11:54:56Z","updated_at":"2016-03-31T11:06:15Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Tribler/tribler/pulls/1843","html_url":"https://github.com/Tribler/tribler/pull/1843","diff_url":"https://github.com/Tribler/tribler/pull/1843.diff","patch_url":"https://github.com/Tribler/tribler/pull/1843.patch"},"body":"New pull request for the multichain feature. Supersedes both #1429 and #1784.\r\n\r\nToDo list:\r\n- [ ] fix the re-introduce candidate bug in the gumby experiments.\r\n- [ ] dramatically increase the blocksize from 1 MByte 100MByte and reduce checking interval.\r\n- [ ] disable community by default, no autoload."},"comment":{"url":"https://api.github.com/repos/Tribler/tribler/issues/comments/203879475","html_url":"https://github.com/Tribler/tribler/pull/1843#issuecomment-203879475","issue_url":"https://api.github.com/repos/Tribler/tribler/issues/1843","id":203879475,"user":{"login":"Captain-Coder","id":3216100,"avatar_url":"https://avatars.githubusercontent.com/u/3216100?v=3","gravatar_id":"","url":"https://api.github.com/users/Captain-Coder","html_url":"https://github.com/Captain-Coder","followers_url":"https://api.github.com/users/Captain-Coder/followers","following_url":"https://api.github.com/users/Captain-Coder/following{/other_user}","gists_url":"https://api.github.com/users/Captain-Coder/gists{/gist_id}","starred_url":"https://api.github.com/users/Captain-Coder/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Captain-Coder/subscriptions","organizations_url":"https://api.github.com/users/Captain-Coder/orgs","repos_url":"https://api.github.com/users/Captain-Coder/repos","events_url":"https://api.github.com/users/Captain-Coder/events{/privacy}","received_events_url":"https://api.github.com/users/Captain-Coder/received_events","type":"User","site_admin":false},"created_at":"2016-03-31T11:06:14Z","updated_at":"2016-03-31T11:06:14Z","body":"Hi @NielsZeilemaker, thanks for having a look at the code! I agree that the crawler could be more fancy and make better use of what dispersy has to offer, however it is a quit'n'dirty way for us to get some data in. That is the main goal at this time.\r\n\r\nFrom what I understand about dispersy it is not designed for mutable messages, but the trouble is that multichain blocks are mutable (the responder adds some data). So equating a block to a single dispersy message is not that easy. (Atleast it requires a mapping in between) From what I understand @snorberhuis already ran into this problem. I have been working on a refactor ([\"halves\"](https://github.com/Captain-Coder/tribler/tree/halves/Tribler/community/multichain)) that takes the half-signed-as-default to the next level and makes the blocks (and thus dispersy messages) immutable.\r\n\r\nOn the slightly more technical side, we have two databases at the moment, dispersy and multichain (it has a separate one). So adding any kind of FK constraints would mean that the multichain tables need to be in the dispersy database (no cross database FK's in sqlite), thus making multichain a component of Dispersy. I am uncertain if this is the right place for the multichain community.\r\n\r\n"}}