{"action":"created","issue":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/37473","repository_url":"https://api.github.com/repos/kubernetes/kubernetes","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/37473/labels{/name}","comments_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/37473/comments","events_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/37473/events","html_url":"https://github.com/kubernetes/kubernetes/issues/37473","id":191641875,"number":37473,"title":"Allow for serving GET operation from cache if user explicitly opt-in for it","user":{"login":"wojtek-t","id":10743879,"avatar_url":"https://avatars.githubusercontent.com/u/10743879?v=3","gravatar_id":"","url":"https://api.github.com/users/wojtek-t","html_url":"https://github.com/wojtek-t","followers_url":"https://api.github.com/users/wojtek-t/followers","following_url":"https://api.github.com/users/wojtek-t/following{/other_user}","gists_url":"https://api.github.com/users/wojtek-t/gists{/gist_id}","starred_url":"https://api.github.com/users/wojtek-t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wojtek-t/subscriptions","organizations_url":"https://api.github.com/users/wojtek-t/orgs","repos_url":"https://api.github.com/users/wojtek-t/repos","events_url":"https://api.github.com/users/wojtek-t/events{/privacy}","received_events_url":"https://api.github.com/users/wojtek-t/received_events","type":"User","site_admin":false},"labels":[{"id":173493835,"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/sig/api-machinery","name":"sig/api-machinery","color":"d2b48c","default":false},{"id":125010198,"url":"https://api.github.com/repos/kubernetes/kubernetes/labels/sig/scalability","name":"sig/scalability","color":"d2b48c","default":false}],"state":"open","locked":false,"assignee":{"login":"wojtek-t","id":10743879,"avatar_url":"https://avatars.githubusercontent.com/u/10743879?v=3","gravatar_id":"","url":"https://api.github.com/users/wojtek-t","html_url":"https://github.com/wojtek-t","followers_url":"https://api.github.com/users/wojtek-t/followers","following_url":"https://api.github.com/users/wojtek-t/following{/other_user}","gists_url":"https://api.github.com/users/wojtek-t/gists{/gist_id}","starred_url":"https://api.github.com/users/wojtek-t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wojtek-t/subscriptions","organizations_url":"https://api.github.com/users/wojtek-t/orgs","repos_url":"https://api.github.com/users/wojtek-t/repos","events_url":"https://api.github.com/users/wojtek-t/events{/privacy}","received_events_url":"https://api.github.com/users/wojtek-t/received_events","type":"User","site_admin":false},"assignees":[{"login":"wojtek-t","id":10743879,"avatar_url":"https://avatars.githubusercontent.com/u/10743879?v=3","gravatar_id":"","url":"https://api.github.com/users/wojtek-t","html_url":"https://github.com/wojtek-t","followers_url":"https://api.github.com/users/wojtek-t/followers","following_url":"https://api.github.com/users/wojtek-t/following{/other_user}","gists_url":"https://api.github.com/users/wojtek-t/gists{/gist_id}","starred_url":"https://api.github.com/users/wojtek-t/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wojtek-t/subscriptions","organizations_url":"https://api.github.com/users/wojtek-t/orgs","repos_url":"https://api.github.com/users/wojtek-t/repos","events_url":"https://api.github.com/users/wojtek-t/events{/privacy}","received_events_url":"https://api.github.com/users/wojtek-t/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/31","html_url":"https://github.com/kubernetes/kubernetes/milestone/31","labels_url":"https://api.github.com/repos/kubernetes/kubernetes/milestones/31/labels","id":2130587,"number":31,"title":"v1.6","description":null,"creator":{"login":"saad-ali","id":10052848,"avatar_url":"https://avatars.githubusercontent.com/u/10052848?v=3","gravatar_id":"","url":"https://api.github.com/users/saad-ali","html_url":"https://github.com/saad-ali","followers_url":"https://api.github.com/users/saad-ali/followers","following_url":"https://api.github.com/users/saad-ali/following{/other_user}","gists_url":"https://api.github.com/users/saad-ali/gists{/gist_id}","starred_url":"https://api.github.com/users/saad-ali/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saad-ali/subscriptions","organizations_url":"https://api.github.com/users/saad-ali/orgs","repos_url":"https://api.github.com/users/saad-ali/repos","events_url":"https://api.github.com/users/saad-ali/events{/privacy}","received_events_url":"https://api.github.com/users/saad-ali/received_events","type":"User","site_admin":false},"open_issues":214,"closed_issues":127,"state":"open","created_at":"2016-11-12T00:35:38Z","updated_at":"2016-12-20T14:46:42Z","due_on":null,"closed_at":null},"comments":15,"created_at":"2016-11-25T07:43:37Z","updated_at":"2016-12-20T20:20:49Z","closed_at":null,"body":"Currently, if you are sending \"LIST\" request to apiserver, depending on the \"ResourceVersion\" field value:\r\nhttps://github.com/kubernetes/kubernetes/blob/8ef325643490274f8639ea1bee8c7718b316e839/pkg/api/v1/types.go#L3247\r\nthe request will be served:\r\n- from etcd if it is not set\r\n- from apiserver cache, if it is set with a guarantee that the returned result is at least as fresh as the \"RV\" passed as parameter.\r\nServing request from etcd is a default behavior, but if client can tolerate a bit unfresh data (e.g. if the list is just a starting point for a watch), then it can opt-in for listing from apiserver cache. This mechanism is used e.g. in the reflector/informer framework and is significant optimization for the system.\r\n\r\nWe should allow for exactly the same for \"GET\" operations.\r\n\r\n@lavalamp @kubernetes/sig-api-machinery "},"comment":{"url":"https://api.github.com/repos/kubernetes/kubernetes/issues/comments/268347958","html_url":"https://github.com/kubernetes/kubernetes/issues/37473#issuecomment-268347958","issue_url":"https://api.github.com/repos/kubernetes/kubernetes/issues/37473","id":268347958,"user":{"login":"liggitt","id":980082,"avatar_url":"https://avatars.githubusercontent.com/u/980082?v=3","gravatar_id":"","url":"https://api.github.com/users/liggitt","html_url":"https://github.com/liggitt","followers_url":"https://api.github.com/users/liggitt/followers","following_url":"https://api.github.com/users/liggitt/following{/other_user}","gists_url":"https://api.github.com/users/liggitt/gists{/gist_id}","starred_url":"https://api.github.com/users/liggitt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liggitt/subscriptions","organizations_url":"https://api.github.com/users/liggitt/orgs","repos_url":"https://api.github.com/users/liggitt/repos","events_url":"https://api.github.com/users/liggitt/events{/privacy}","received_events_url":"https://api.github.com/users/liggitt/received_events","type":"User","site_admin":false},"created_at":"2016-12-20T20:20:49Z","updated_at":"2016-12-20T20:20:49Z","body":"it seems odd that the list resourceVersion initially received for http://localhost:8080/api/v1/namespaces/default/serviceaccounts (1578) results in a hang or BadRequest when requested like http://localhost:8080/api/v1/namespaces/default/serviceaccounts?resourceVersion=1578... the cache is that fresh"}}
{"actor":{"display_login":"liggitt"}}