{"action":"created","issue":{"url":"https://api.github.com/repos/flux-framework/flux-core/issues/1800","repository_url":"https://api.github.com/repos/flux-framework/flux-core","labels_url":"https://api.github.com/repos/flux-framework/flux-core/issues/1800/labels{/name}","comments_url":"https://api.github.com/repos/flux-framework/flux-core/issues/1800/comments","events_url":"https://api.github.com/repos/flux-framework/flux-core/issues/1800/events","html_url":"https://github.com/flux-framework/flux-core/pull/1800","id":377196010,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI4MjAzNzM5","number":1800,"title":"kvs: provide mechanism to load KVS root from completed instance in subdir of another instance","user":{"login":"garlick","id":169947,"node_id":"MDQ6VXNlcjE2OTk0Nw==","avatar_url":"https://avatars1.githubusercontent.com/u/169947?v=4","gravatar_id":"","url":"https://api.github.com/users/garlick","html_url":"https://github.com/garlick","followers_url":"https://api.github.com/users/garlick/followers","following_url":"https://api.github.com/users/garlick/following{/other_user}","gists_url":"https://api.github.com/users/garlick/gists{/gist_id}","starred_url":"https://api.github.com/users/garlick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/garlick/subscriptions","organizations_url":"https://api.github.com/users/garlick/orgs","repos_url":"https://api.github.com/users/garlick/repos","events_url":"https://api.github.com/users/garlick/events{/privacy}","received_events_url":"https://api.github.com/users/garlick/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-11-04T21:19:53Z","updated_at":"2018-11-06T18:52:38Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/flux-framework/flux-core/pulls/1800","html_url":"https://github.com/flux-framework/flux-core/pull/1800","diff_url":"https://github.com/flux-framework/flux-core/pull/1800.diff","patch_url":"https://github.com/flux-framework/flux-core/pull/1800.patch"},"body":"This PR builds on @grondo's experiment in #777, which was further discussed recently in #1754:\r\n* If the `persist-directory` is set, save the final kvs root reference to `kvsroot.final` in that directory\r\n* Fix a bug in `content-sqlite` that was unconditionally unlinking the sqlite db file on exit, despite obvious intentions not to elsewhere in the code\r\n* Misc cleanup in `content-sqlite` (errno, exit on error, etc)\r\n* Add `flux kvs put --treeobj key=- <value` capability\r\n* Modify @grondo's sharness test to create previous root as a snapshot in current root using `flux kvs put --treeobj`\r\n\r\nOne caveat is that the shutdown timer could interrupt rc3 before the content cache is fully flushed to disk, in which case it's possible the snapshot will have dangling references.  I  would prefer to treat that as a separate issue if/when it comes up though."},"comment":{"url":"https://api.github.com/repos/flux-framework/flux-core/issues/comments/436366180","html_url":"https://github.com/flux-framework/flux-core/pull/1800#issuecomment-436366180","issue_url":"https://api.github.com/repos/flux-framework/flux-core/issues/1800","id":436366180,"node_id":"MDEyOklzc3VlQ29tbWVudDQzNjM2NjE4MA==","user":{"login":"grondo","id":741970,"node_id":"MDQ6VXNlcjc0MTk3MA==","avatar_url":"https://avatars3.githubusercontent.com/u/741970?v=4","gravatar_id":"","url":"https://api.github.com/users/grondo","html_url":"https://github.com/grondo","followers_url":"https://api.github.com/users/grondo/followers","following_url":"https://api.github.com/users/grondo/following{/other_user}","gists_url":"https://api.github.com/users/grondo/gists{/gist_id}","starred_url":"https://api.github.com/users/grondo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grondo/subscriptions","organizations_url":"https://api.github.com/users/grondo/orgs","repos_url":"https://api.github.com/users/grondo/repos","events_url":"https://api.github.com/users/grondo/events{/privacy}","received_events_url":"https://api.github.com/users/grondo/received_events","type":"User","site_admin":false},"created_at":"2018-11-06T18:52:38Z","updated_at":"2018-11-06T18:52:38Z","author_association":"CONTRIBUTOR","body":"Looks like diff coverage is low because `log_sqlite_error()` is never called (also, error handling code). As long as that is expected, it is probably fine to merge this PR now (increases overall coverage)"}}
{"actor":{"display_login":"grondo"}}