{"action":"opened","issue":{"url":"https://api.github.com/repos/byzhang/leveldb/issues/51","labels_url":"https://api.github.com/repos/byzhang/leveldb/issues/51/labels{/name}","comments_url":"https://api.github.com/repos/byzhang/leveldb/issues/51/comments","events_url":"https://api.github.com/repos/byzhang/leveldb/issues/51/events","html_url":"https://github.com/byzhang/leveldb/issues/51","id":59730108,"number":51,"title":"Feature Request: more control over, better information about disk space utilization","user":{"login":"GoogleCodeExporter","id":9614759,"avatar_url":"https://avatars.githubusercontent.com/u/9614759?v=3","gravatar_id":"","url":"https://api.github.com/users/GoogleCodeExporter","html_url":"https://github.com/GoogleCodeExporter","followers_url":"https://api.github.com/users/GoogleCodeExporter/followers","following_url":"https://api.github.com/users/GoogleCodeExporter/following{/other_user}","gists_url":"https://api.github.com/users/GoogleCodeExporter/gists{/gist_id}","starred_url":"https://api.github.com/users/GoogleCodeExporter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GoogleCodeExporter/subscriptions","organizations_url":"https://api.github.com/users/GoogleCodeExporter/orgs","repos_url":"https://api.github.com/users/GoogleCodeExporter/repos","events_url":"https://api.github.com/users/GoogleCodeExporter/events{/privacy}","received_events_url":"https://api.github.com/users/GoogleCodeExporter/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/byzhang/leveldb/labels/auto-migrated","name":"auto-migrated","color":"ededed"},{"url":"https://api.github.com/repos/byzhang/leveldb/labels/Priority-Medium","name":"Priority-Medium","color":"ededed"},{"url":"https://api.github.com/repos/byzhang/leveldb/labels/Type-Defect","name":"Type-Defect","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-03-04T00:16:36Z","updated_at":"2015-03-04T00:16:36Z","closed_at":null,"body":"```\nIn an embedded system or a handheld computer like an iPhone, space is at a \npremium. It's often important to maintain strict control over database size \ngrowth.\n\nPlease enhance leveldb to provide better runtime control over the amount of \ndisk space used and/or provide more complete, up-to-date information about how \nmuch space is bing used, so that it's possible to remove entries to make more \nspace. The current size estimate functionality is often dramatically wrong, \neven after closing and re-opening the database (I see values off by 75% or more \nversus file system measurements).\n\nAlso, please provide a reliable compaction interface for mere mortals who don't \nknow how the Internals work. The current DB::Compact() method has the opposite \nto the intended effect: the database grows dramatically each time it's invoked. \nThe only way to get actual compaction behaviour seems to be to close and \nre-open the database.\n```\n\nOriginal issue reported on code.google.com by `bgulanow...@gmail.com` on 3 Nov 2011 at 8:46"}}