{"action":"created","issue":{"url":"https://api.github.com/repos/zevv/duc/issues/164","repository_url":"https://api.github.com/repos/zevv/duc","labels_url":"https://api.github.com/repos/zevv/duc/issues/164/labels{/name}","comments_url":"https://api.github.com/repos/zevv/duc/issues/164/comments","events_url":"https://api.github.com/repos/zevv/duc/issues/164/events","html_url":"https://github.com/zevv/duc/issues/164","id":198064936,"number":164,"title":"How to handle all the db backends","user":{"login":"zevv","id":3001919,"avatar_url":"https://avatars.githubusercontent.com/u/3001919?v=3","gravatar_id":"","url":"https://api.github.com/users/zevv","html_url":"https://github.com/zevv","followers_url":"https://api.github.com/users/zevv/followers","following_url":"https://api.github.com/users/zevv/following{/other_user}","gists_url":"https://api.github.com/users/zevv/gists{/gist_id}","starred_url":"https://api.github.com/users/zevv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zevv/subscriptions","organizations_url":"https://api.github.com/users/zevv/orgs","repos_url":"https://api.github.com/users/zevv/repos","events_url":"https://api.github.com/users/zevv/events{/privacy}","received_events_url":"https://api.github.com/users/zevv/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2016-12-29T20:35:57Z","updated_at":"2016-12-30T07:00:16Z","closed_at":null,"body":"At this time Duc supports five different database backends, all come with some good and some bad. Is it a good idea to keep supporting all of those, or should we pick one (the best?) and drop the rest?\r\n\r\nI did some simple tests to check performance and database size of the various dbs on my little laptop, these are the results. I also added a column indicating if the database files are portable over different architectures, and if the db format is 'crash safe', whatever that means\r\n\r\n````\r\ndatabase       time   size  portable   crash_safe\r\n-------------------------------------------------\r\ntokyocabinet   6.42   39M     no         ?\r\nsqlite3        6.30   99M     yes        yes\r\nlmdb           3.48  118M     no         yes\r\nkyoto          4.28   40M     no         no\r\n````\r\n\r\nI left out leveldb because this backend seems to be kind of broken at the moment - which is one of the downsides of supporting so many.\r\n\r\nSo:\r\n\r\n- kyoto is great for performance and compression, but not stable and not portable\r\n- sqlite is the only portable database - drop this and people can not export db's from solaris to linux\r\n- lmdb is blazingly fast, but the db size is the largest of all\r\n\r\nNot an easy choice..."},"comment":{"url":"https://api.github.com/repos/zevv/duc/issues/comments/269739267","html_url":"https://github.com/zevv/duc/issues/164#issuecomment-269739267","issue_url":"https://api.github.com/repos/zevv/duc/issues/164","id":269739267,"user":{"login":"zevv","id":3001919,"avatar_url":"https://avatars.githubusercontent.com/u/3001919?v=3","gravatar_id":"","url":"https://api.github.com/users/zevv","html_url":"https://github.com/zevv","followers_url":"https://api.github.com/users/zevv/followers","following_url":"https://api.github.com/users/zevv/following{/other_user}","gists_url":"https://api.github.com/users/zevv/gists{/gist_id}","starred_url":"https://api.github.com/users/zevv/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zevv/subscriptions","organizations_url":"https://api.github.com/users/zevv/orgs","repos_url":"https://api.github.com/users/zevv/repos","events_url":"https://api.github.com/users/zevv/events{/privacy}","received_events_url":"https://api.github.com/users/zevv/received_events","type":"User","site_admin":false},"created_at":"2016-12-30T07:00:16Z","updated_at":"2016-12-30T07:00:16Z","body":"Quoting John (2016-12-29 23:07:21)\n>   Ouch... but I thought we said that the best thing to do was to index\n>   to a temp file, and then move it onto the old DB location? Or can\n>   lmdb handle people reading while it's being updated?\n\nI fixed this a few days ago.\n\n--\n:wq\n^X^Cy^K^X^C^C^C^C\n"}}
{"actor":{"display_login":"zevv"}}