{"action":"created","comment":{"url":"https://api.github.com/repos/basho/eleveldb/pulls/comments/69789069","id":69789069,"diff_hunk":"@@ -239,3 +239,31 @@\n   {datatype, {enum, [true, false]}},\n   hidden\n ]}.\n+\n+%% @doc Enable global expiry.  All leveldb databases / vnodes\n+%% will use same expiry_minutes and whole_file_expiry settings.\n+%% Same settings apply to all leveldb instances in multi_backend.\n+{mapping, \"leveldb.expiry_enabled\", \"eleveldb.expiry_enabled\", [\n+  {default, off},\n+  {datatype, flag},\n+  hidden\n+]}.\n+\n+%% @doc Minutes until object expires.  Gives number of minutes\n+%% a stored key/value will stay within the database before automatic\n+%% deletion.  Zero disables expiry by age (minutes) feature\n+{mapping, \"leveldb.expiry_minutes\", \"eleveldb.expiry_minutes\", [\n+  {default, 0},\n+  {datatype, integer},","path":"priv/eleveldb.schema","position":19,"original_position":19,"commit_id":"72b6ced1860afd5f43f92d0c7e8aa28919e2fcc2","original_commit_id":"72b6ced1860afd5f43f92d0c7e8aa28919e2fcc2","user":{"login":"matthewvon","id":225681,"avatar_url":"https://avatars.githubusercontent.com/u/225681?v=3","gravatar_id":"","url":"https://api.github.com/users/matthewvon","html_url":"https://github.com/matthewvon","followers_url":"https://api.github.com/users/matthewvon/followers","following_url":"https://api.github.com/users/matthewvon/following{/other_user}","gists_url":"https://api.github.com/users/matthewvon/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewvon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewvon/subscriptions","organizations_url":"https://api.github.com/users/matthewvon/orgs","repos_url":"https://api.github.com/users/matthewvon/repos","events_url":"https://api.github.com/users/matthewvon/events{/privacy}","received_events_url":"https://api.github.com/users/matthewvon/received_events","type":"User","site_admin":false},"body":"cuttlefish is its own little world.  I do copy/paste of previous options as my base.  The enif_get_XxX() functions used in eleveldb.cc are defined as filtering out of range values.  Therefore my defense is at that layer, not here or other weirdness in eleveldb.erl.","created_at":"2016-07-06T18:48:50Z","updated_at":"2016-07-06T18:48:50Z","html_url":"https://github.com/basho/eleveldb/pull/203#discussion_r69789069","pull_request_url":"https://api.github.com/repos/basho/eleveldb/pulls/203","_links":{"self":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/comments/69789069"},"html":{"href":"https://github.com/basho/eleveldb/pull/203#discussion_r69789069"},"pull_request":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/203"}}},"pull_request":{"url":"https://api.github.com/repos/basho/eleveldb/pulls/203","id":76311441,"html_url":"https://github.com/basho/eleveldb/pull/203","diff_url":"https://github.com/basho/eleveldb/pull/203.diff","patch_url":"https://github.com/basho/eleveldb/pull/203.patch","issue_url":"https://api.github.com/repos/basho/eleveldb/issues/203","number":203,"state":"open","locked":false,"title":"integrate open source expiry features into eleveldb option processing","user":{"login":"matthewvon","id":225681,"avatar_url":"https://avatars.githubusercontent.com/u/225681?v=3","gravatar_id":"","url":"https://api.github.com/users/matthewvon","html_url":"https://github.com/matthewvon","followers_url":"https://api.github.com/users/matthewvon/followers","following_url":"https://api.github.com/users/matthewvon/following{/other_user}","gists_url":"https://api.github.com/users/matthewvon/gists{/gist_id}","starred_url":"https://api.github.com/users/matthewvon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/matthewvon/subscriptions","organizations_url":"https://api.github.com/users/matthewvon/orgs","repos_url":"https://api.github.com/users/matthewvon/repos","events_url":"https://api.github.com/users/matthewvon/events{/privacy}","received_events_url":"https://api.github.com/users/matthewvon/received_events","type":"User","site_admin":false},"body":"Automatically add an ExpiryModuleOS object to leveldb::Options if any one of the 3 expiry options seen.  Only need one instance of the object and it will auto destruct after last pointer released.","created_at":"2016-07-05T17:25:35Z","updated_at":"2016-07-06T18:48:50Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a8a41f2b7b4fe0a9f71584dc8ae25c2d4f37b422","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/basho/eleveldb/pulls/203/commits","review_comments_url":"https://api.github.com/repos/basho/eleveldb/pulls/203/comments","review_comment_url":"https://api.github.com/repos/basho/eleveldb/pulls/comments{/number}","comments_url":"https://api.github.com/repos/basho/eleveldb/issues/203/comments","statuses_url":"https://api.github.com/repos/basho/eleveldb/statuses/72b6ced1860afd5f43f92d0c7e8aa28919e2fcc2","head":{"label":"basho:mv-expiry","ref":"mv-expiry","sha":"72b6ced1860afd5f43f92d0c7e8aa28919e2fcc2","user":{"login":"basho","id":176293,"avatar_url":"https://avatars.githubusercontent.com/u/176293?v=3","gravatar_id":"","url":"https://api.github.com/users/basho","html_url":"https://github.com/basho","followers_url":"https://api.github.com/users/basho/followers","following_url":"https://api.github.com/users/basho/following{/other_user}","gists_url":"https://api.github.com/users/basho/gists{/gist_id}","starred_url":"https://api.github.com/users/basho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/basho/subscriptions","organizations_url":"https://api.github.com/users/basho/orgs","repos_url":"https://api.github.com/users/basho/repos","events_url":"https://api.github.com/users/basho/events{/privacy}","received_events_url":"https://api.github.com/users/basho/received_events","type":"Organization","site_admin":false},"repo":{"id":1746398,"name":"eleveldb","full_name":"basho/eleveldb","owner":{"login":"basho","id":176293,"avatar_url":"https://avatars.githubusercontent.com/u/176293?v=3","gravatar_id":"","url":"https://api.github.com/users/basho","html_url":"https://github.com/basho","followers_url":"https://api.github.com/users/basho/followers","following_url":"https://api.github.com/users/basho/following{/other_user}","gists_url":"https://api.github.com/users/basho/gists{/gist_id}","starred_url":"https://api.github.com/users/basho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/basho/subscriptions","organizations_url":"https://api.github.com/users/basho/orgs","repos_url":"https://api.github.com/users/basho/repos","events_url":"https://api.github.com/users/basho/events{/privacy}","received_events_url":"https://api.github.com/users/basho/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/basho/eleveldb","description":"Erlang LevelDB API","fork":false,"url":"https://api.github.com/repos/basho/eleveldb","forks_url":"https://api.github.com/repos/basho/eleveldb/forks","keys_url":"https://api.github.com/repos/basho/eleveldb/keys{/key_id}","collaborators_url":"https://api.github.com/repos/basho/eleveldb/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/basho/eleveldb/teams","hooks_url":"https://api.github.com/repos/basho/eleveldb/hooks","issue_events_url":"https://api.github.com/repos/basho/eleveldb/issues/events{/number}","events_url":"https://api.github.com/repos/basho/eleveldb/events","assignees_url":"https://api.github.com/repos/basho/eleveldb/assignees{/user}","branches_url":"https://api.github.com/repos/basho/eleveldb/branches{/branch}","tags_url":"https://api.github.com/repos/basho/eleveldb/tags","blobs_url":"https://api.github.com/repos/basho/eleveldb/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/basho/eleveldb/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/basho/eleveldb/git/refs{/sha}","trees_url":"https://api.github.com/repos/basho/eleveldb/git/trees{/sha}","statuses_url":"https://api.github.com/repos/basho/eleveldb/statuses/{sha}","languages_url":"https://api.github.com/repos/basho/eleveldb/languages","stargazers_url":"https://api.github.com/repos/basho/eleveldb/stargazers","contributors_url":"https://api.github.com/repos/basho/eleveldb/contributors","subscribers_url":"https://api.github.com/repos/basho/eleveldb/subscribers","subscription_url":"https://api.github.com/repos/basho/eleveldb/subscription","commits_url":"https://api.github.com/repos/basho/eleveldb/commits{/sha}","git_commits_url":"https://api.github.com/repos/basho/eleveldb/git/commits{/sha}","comments_url":"https://api.github.com/repos/basho/eleveldb/comments{/number}","issue_comment_url":"https://api.github.com/repos/basho/eleveldb/issues/comments{/number}","contents_url":"https://api.github.com/repos/basho/eleveldb/contents/{+path}","compare_url":"https://api.github.com/repos/basho/eleveldb/compare/{base}...{head}","merges_url":"https://api.github.com/repos/basho/eleveldb/merges","archive_url":"https://api.github.com/repos/basho/eleveldb/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/basho/eleveldb/downloads","issues_url":"https://api.github.com/repos/basho/eleveldb/issues{/number}","pulls_url":"https://api.github.com/repos/basho/eleveldb/pulls{/number}","milestones_url":"https://api.github.com/repos/basho/eleveldb/milestones{/number}","notifications_url":"https://api.github.com/repos/basho/eleveldb/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/basho/eleveldb/labels{/name}","releases_url":"https://api.github.com/repos/basho/eleveldb/releases{/id}","deployments_url":"https://api.github.com/repos/basho/eleveldb/deployments","created_at":"2011-05-14T03:40:34Z","updated_at":"2016-07-04T15:12:52Z","pushed_at":"2016-07-05T17:25:36Z","git_url":"git://github.com/basho/eleveldb.git","ssh_url":"git@github.com:basho/eleveldb.git","clone_url":"https://github.com/basho/eleveldb.git","svn_url":"https://github.com/basho/eleveldb","homepage":"","size":8938,"stargazers_count":180,"watchers_count":180,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":92,"mirror_url":null,"open_issues_count":27,"forks":92,"open_issues":27,"watchers":180,"default_branch":"develop"}},"base":{"label":"basho:develop","ref":"develop","sha":"cd3c63a77b89c9322e38628a04dfc2349433bc5d","user":{"login":"basho","id":176293,"avatar_url":"https://avatars.githubusercontent.com/u/176293?v=3","gravatar_id":"","url":"https://api.github.com/users/basho","html_url":"https://github.com/basho","followers_url":"https://api.github.com/users/basho/followers","following_url":"https://api.github.com/users/basho/following{/other_user}","gists_url":"https://api.github.com/users/basho/gists{/gist_id}","starred_url":"https://api.github.com/users/basho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/basho/subscriptions","organizations_url":"https://api.github.com/users/basho/orgs","repos_url":"https://api.github.com/users/basho/repos","events_url":"https://api.github.com/users/basho/events{/privacy}","received_events_url":"https://api.github.com/users/basho/received_events","type":"Organization","site_admin":false},"repo":{"id":1746398,"name":"eleveldb","full_name":"basho/eleveldb","owner":{"login":"basho","id":176293,"avatar_url":"https://avatars.githubusercontent.com/u/176293?v=3","gravatar_id":"","url":"https://api.github.com/users/basho","html_url":"https://github.com/basho","followers_url":"https://api.github.com/users/basho/followers","following_url":"https://api.github.com/users/basho/following{/other_user}","gists_url":"https://api.github.com/users/basho/gists{/gist_id}","starred_url":"https://api.github.com/users/basho/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/basho/subscriptions","organizations_url":"https://api.github.com/users/basho/orgs","repos_url":"https://api.github.com/users/basho/repos","events_url":"https://api.github.com/users/basho/events{/privacy}","received_events_url":"https://api.github.com/users/basho/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/basho/eleveldb","description":"Erlang LevelDB API","fork":false,"url":"https://api.github.com/repos/basho/eleveldb","forks_url":"https://api.github.com/repos/basho/eleveldb/forks","keys_url":"https://api.github.com/repos/basho/eleveldb/keys{/key_id}","collaborators_url":"https://api.github.com/repos/basho/eleveldb/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/basho/eleveldb/teams","hooks_url":"https://api.github.com/repos/basho/eleveldb/hooks","issue_events_url":"https://api.github.com/repos/basho/eleveldb/issues/events{/number}","events_url":"https://api.github.com/repos/basho/eleveldb/events","assignees_url":"https://api.github.com/repos/basho/eleveldb/assignees{/user}","branches_url":"https://api.github.com/repos/basho/eleveldb/branches{/branch}","tags_url":"https://api.github.com/repos/basho/eleveldb/tags","blobs_url":"https://api.github.com/repos/basho/eleveldb/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/basho/eleveldb/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/basho/eleveldb/git/refs{/sha}","trees_url":"https://api.github.com/repos/basho/eleveldb/git/trees{/sha}","statuses_url":"https://api.github.com/repos/basho/eleveldb/statuses/{sha}","languages_url":"https://api.github.com/repos/basho/eleveldb/languages","stargazers_url":"https://api.github.com/repos/basho/eleveldb/stargazers","contributors_url":"https://api.github.com/repos/basho/eleveldb/contributors","subscribers_url":"https://api.github.com/repos/basho/eleveldb/subscribers","subscription_url":"https://api.github.com/repos/basho/eleveldb/subscription","commits_url":"https://api.github.com/repos/basho/eleveldb/commits{/sha}","git_commits_url":"https://api.github.com/repos/basho/eleveldb/git/commits{/sha}","comments_url":"https://api.github.com/repos/basho/eleveldb/comments{/number}","issue_comment_url":"https://api.github.com/repos/basho/eleveldb/issues/comments{/number}","contents_url":"https://api.github.com/repos/basho/eleveldb/contents/{+path}","compare_url":"https://api.github.com/repos/basho/eleveldb/compare/{base}...{head}","merges_url":"https://api.github.com/repos/basho/eleveldb/merges","archive_url":"https://api.github.com/repos/basho/eleveldb/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/basho/eleveldb/downloads","issues_url":"https://api.github.com/repos/basho/eleveldb/issues{/number}","pulls_url":"https://api.github.com/repos/basho/eleveldb/pulls{/number}","milestones_url":"https://api.github.com/repos/basho/eleveldb/milestones{/number}","notifications_url":"https://api.github.com/repos/basho/eleveldb/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/basho/eleveldb/labels{/name}","releases_url":"https://api.github.com/repos/basho/eleveldb/releases{/id}","deployments_url":"https://api.github.com/repos/basho/eleveldb/deployments","created_at":"2011-05-14T03:40:34Z","updated_at":"2016-07-04T15:12:52Z","pushed_at":"2016-07-05T17:25:36Z","git_url":"git://github.com/basho/eleveldb.git","ssh_url":"git@github.com:basho/eleveldb.git","clone_url":"https://github.com/basho/eleveldb.git","svn_url":"https://github.com/basho/eleveldb","homepage":"","size":8938,"stargazers_count":180,"watchers_count":180,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":92,"mirror_url":null,"open_issues_count":27,"forks":92,"open_issues":27,"watchers":180,"default_branch":"develop"}},"_links":{"self":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/203"},"html":{"href":"https://github.com/basho/eleveldb/pull/203"},"issue":{"href":"https://api.github.com/repos/basho/eleveldb/issues/203"},"comments":{"href":"https://api.github.com/repos/basho/eleveldb/issues/203/comments"},"review_comments":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/203/comments"},"review_comment":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/basho/eleveldb/pulls/203/commits"},"statuses":{"href":"https://api.github.com/repos/basho/eleveldb/statuses/72b6ced1860afd5f43f92d0c7e8aa28919e2fcc2"}}}}
{"actor":{"display_login":"matthewvon"}}