{"action":"created","issue":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/2495","labels_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/2495/labels{/name}","comments_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/2495/comments","events_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/2495/events","html_url":"https://github.com/cockroachdb/cockroach/pull/2495","id":106337199,"number":2495,"title":"Use zone configs from system table.","user":{"login":"mberhault","id":5901480,"avatar_url":"https://avatars.githubusercontent.com/u/5901480?v=3","gravatar_id":"","url":"https://api.github.com/users/mberhault","html_url":"https://github.com/mberhault","followers_url":"https://api.github.com/users/mberhault/followers","following_url":"https://api.github.com/users/mberhault/following{/other_user}","gists_url":"https://api.github.com/users/mberhault/gists{/gist_id}","starred_url":"https://api.github.com/users/mberhault/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mberhault/subscriptions","organizations_url":"https://api.github.com/users/mberhault/orgs","repos_url":"https://api.github.com/users/mberhault/repos","events_url":"https://api.github.com/users/mberhault/events{/privacy}","received_events_url":"https://api.github.com/users/mberhault/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-09-14T13:09:46Z","updated_at":"2015-09-15T18:56:25Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/cockroachdb/cockroach/pulls/2495","html_url":"https://github.com/cockroachdb/cockroach/pull/2495","diff_url":"https://github.com/cockroachdb/cockroach/pull/2495.diff","patch_url":"https://github.com/cockroachdb/cockroach/pull/2495.patch"},"body":"Fixes #2090 (make configs aware of structured layout)\r\nFixes #2179 (sync system DB across nodes)\r\nFixes #2272 (split at table boundaries)\r\n\r\nThis switches all zone configs from the old-school prefix-based one to\r\nthe system.zones table.\r\n\r\nBasic summary:\r\n* the systemdb span (all system tables) gets gossiped as\r\n  config.SystemConfig\r\n* config.SystemConfig has two basic methods: ComputeSplitKeys(start,\r\n  end) and GetZoneConfigForKey(range start key)\r\n* we split at every user object ID (database or table) below the\r\n  currently allocated one\r\n* if a table does not have a zone config, we use its databases's config.\r\n* if a database does not have a zone config, we use the hard-coded\r\n  default.\r\n\r\nSome likely changes in the very near future:\r\n* pre-build list of actual zones from existing tables (not databases)\r\n  and only split on those.\r\n* allow setting the system span config\r\n* allow setting the non-structured span config (probably a reserved ID)\r\n* port cli zones commands"},"comment":{"url":"https://api.github.com/repos/cockroachdb/cockroach/issues/comments/140500007","html_url":"https://github.com/cockroachdb/cockroach/pull/2495#issuecomment-140500007","issue_url":"https://api.github.com/repos/cockroachdb/cockroach/issues/2495","id":140500007,"user":{"login":"mberhault","id":5901480,"avatar_url":"https://avatars.githubusercontent.com/u/5901480?v=3","gravatar_id":"","url":"https://api.github.com/users/mberhault","html_url":"https://github.com/mberhault","followers_url":"https://api.github.com/users/mberhault/followers","following_url":"https://api.github.com/users/mberhault/following{/other_user}","gists_url":"https://api.github.com/users/mberhault/gists{/gist_id}","starred_url":"https://api.github.com/users/mberhault/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mberhault/subscriptions","organizations_url":"https://api.github.com/users/mberhault/orgs","repos_url":"https://api.github.com/users/mberhault/repos","events_url":"https://api.github.com/users/mberhault/events{/privacy}","received_events_url":"https://api.github.com/users/mberhault/received_events","type":"User","site_admin":false},"created_at":"2015-09-15T18:56:25Z","updated_at":"2015-09-15T18:56:25Z","body":"all comments addressed, tests are complete, and all remaining TODOs are either future improvements or previously-existing bugs. All have issues filed."}}