{"action":"created","issue":{"url":"https://api.github.com/repos/scijava/scijava-common/issues/141","labels_url":"https://api.github.com/repos/scijava/scijava-common/issues/141/labels{/name}","comments_url":"https://api.github.com/repos/scijava/scijava-common/issues/141/comments","events_url":"https://api.github.com/repos/scijava/scijava-common/issues/141/events","html_url":"https://github.com/scijava/scijava-common/issues/141","id":55474279,"number":141,"title":"Cache discoverable items that do not change","user":{"login":"hinerm","id":1123809,"avatar_url":"https://avatars.githubusercontent.com/u/1123809?v=3","gravatar_id":"","url":"https://api.github.com/users/hinerm","html_url":"https://github.com/hinerm","followers_url":"https://api.github.com/users/hinerm/followers","following_url":"https://api.github.com/users/hinerm/following{/other_user}","gists_url":"https://api.github.com/users/hinerm/gists{/gist_id}","starred_url":"https://api.github.com/users/hinerm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hinerm/subscriptions","organizations_url":"https://api.github.com/users/hinerm/orgs","repos_url":"https://api.github.com/users/hinerm/repos","events_url":"https://api.github.com/users/hinerm/events{/privacy}","received_events_url":"https://api.github.com/users/hinerm/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/scijava/scijava-common/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"hinerm","id":1123809,"avatar_url":"https://avatars.githubusercontent.com/u/1123809?v=3","gravatar_id":"","url":"https://api.github.com/users/hinerm","html_url":"https://github.com/hinerm","followers_url":"https://api.github.com/users/hinerm/followers","following_url":"https://api.github.com/users/hinerm/following{/other_user}","gists_url":"https://api.github.com/users/hinerm/gists{/gist_id}","starred_url":"https://api.github.com/users/hinerm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hinerm/subscriptions","organizations_url":"https://api.github.com/users/hinerm/orgs","repos_url":"https://api.github.com/users/hinerm/repos","events_url":"https://api.github.com/users/hinerm/events{/privacy}","received_events_url":"https://api.github.com/users/hinerm/received_events","type":"User","site_admin":false},"milestone":null,"comments":1,"created_at":"2015-01-26T11:54:42Z","updated_at":"2015-01-26T12:00:44Z","closed_at":null,"body":"During context injection, there are method and field annotation lookups, plus event handler registration, that is repeated when the results should be consistent for a given set of input parameters.\r\n\r\nThe repetition of these queries leads to significant overhead during high loads of context injection.\r\n\r\nThus we should be caching these results."},"comment":{"url":"https://api.github.com/repos/scijava/scijava-common/issues/comments/71450839","html_url":"https://github.com/scijava/scijava-common/issues/141#issuecomment-71450839","issue_url":"https://api.github.com/repos/scijava/scijava-common/issues/141","id":71450839,"user":{"login":"hinerm","id":1123809,"avatar_url":"https://avatars.githubusercontent.com/u/1123809?v=3","gravatar_id":"","url":"https://api.github.com/users/hinerm","html_url":"https://github.com/hinerm","followers_url":"https://api.github.com/users/hinerm/followers","following_url":"https://api.github.com/users/hinerm/following{/other_user}","gists_url":"https://api.github.com/users/hinerm/gists{/gist_id}","starred_url":"https://api.github.com/users/hinerm/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hinerm/subscriptions","organizations_url":"https://api.github.com/users/hinerm/orgs","repos_url":"https://api.github.com/users/hinerm/repos","events_url":"https://api.github.com/users/hinerm/events{/privacy}","received_events_url":"https://api.github.com/users/hinerm/received_events","type":"User","site_admin":false},"created_at":"2015-01-26T12:00:43Z","updated_at":"2015-01-26T12:00:43Z","body":"@dietzc @ctrueden @dscho I have a partial solution on https://github.com/scijava/scijava-common/tree/cache-annotations\r\n\r\nAside from cleanup and documentation, do you think it's worth waiting to merge until we have a cache service that can manage these cached objects? Otherwise I'm worried about their endless proliferation. \r\n\r\n(also, the current caches are slightly wrong at the moment because of the recursion of the annotation scraping)"}}