{"action":"created","issue":{"url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/2533","repository_url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api","labels_url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/2533/labels{/name}","comments_url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/2533/comments","events_url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/2533/events","html_url":"https://github.com/department-of-veterans-affairs/vets-api/pull/2533","id":380324459,"node_id":"MDExOlB1bGxSZXF1ZXN0MjMwNTUwNzI1","number":2533,"title":"Comprehensive mvi integration specs and improvements","user":{"login":"saneshark","id":591737,"node_id":"MDQ6VXNlcjU5MTczNw==","avatar_url":"https://avatars2.githubusercontent.com/u/591737?v=4","gravatar_id":"","url":"https://api.github.com/users/saneshark","html_url":"https://github.com/saneshark","followers_url":"https://api.github.com/users/saneshark/followers","following_url":"https://api.github.com/users/saneshark/following{/other_user}","gists_url":"https://api.github.com/users/saneshark/gists{/gist_id}","starred_url":"https://api.github.com/users/saneshark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saneshark/subscriptions","organizations_url":"https://api.github.com/users/saneshark/orgs","repos_url":"https://api.github.com/users/saneshark/repos","events_url":"https://api.github.com/users/saneshark/events{/privacy}","received_events_url":"https://api.github.com/users/saneshark/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-11-13T16:54:16Z","updated_at":"2018-11-13T20:49:01Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/pulls/2533","html_url":"https://github.com/department-of-veterans-affairs/vets-api/pull/2533","diff_url":"https://github.com/department-of-veterans-affairs/vets-api/pull/2533.diff","patch_url":"https://github.com/department-of-veterans-affairs/vets-api/pull/2533.patch"},"body":"## Description of change\r\nThis allows for caching in MEMORY (not redis), external requests made to MVI after it was discovered that it is possible to make as many as 12 calls to MVI in a single request by the user when a failure is encountered. The specs added ensure that Breakers still operates in a sane manner. This should substantially alleviate stress from calls made as a result of timeouts and other errors that can be encountered.\r\n\r\n1. We should validate that memory_cache is setup correctly. It is of course specific to a particular instance, but that is by design. We should ensure that there are no possibilities for the cache to return a different user's information accidentally.\r\n\r\n2. We may need to revisit cache busting, for places like MHV account creation where it is expected that we create new data in MVI as a result of some action we have performed.\r\n\r\n3. We should also check that the default memory allocation for the cache is substantial per instance, I believe it is 32 Megabytes by default.\r\n\r\n## Testing done\r\nJust specs so far.\r\n\r\n## Testing planned\r\nWe can really only reliably see this in action when it is in production. But we can ensure that there are no side-effects in staging.\r\n\r\n## Acceptance Criteria (Definition of Done)\r\n\r\n#### Unique to this PR\r\n<!-- This would be a good place to include feature flag check item and info, specific dashboards and instrumentation check item and info -->\r\n- [ ] _Replace this line with individual tasks unique to your PR_\r\n\r\n#### Applies to all PRs\r\n\r\n- [ ] Appropriate logging\r\n- [ ] Swagger docs have been updated, if applicable\r\n- [ ] Provide link to originating GitHub issue, or connected to it via ZenHub\r\n- [ ] Does not contain any sensitive information (i.e. PII/credentials/internal URLs/etc., in logging, hardcoded, or in specs)\r\n- [ ] Provide which alerts would indicate a problem with this functionality (if applicable)\r\n"},"comment":{"url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/comments/438431288","html_url":"https://github.com/department-of-veterans-affairs/vets-api/pull/2533#issuecomment-438431288","issue_url":"https://api.github.com/repos/department-of-veterans-affairs/vets-api/issues/2533","id":438431288,"node_id":"MDEyOklzc3VlQ29tbWVudDQzODQzMTI4OA==","user":{"login":"saneshark","id":591737,"node_id":"MDQ6VXNlcjU5MTczNw==","avatar_url":"https://avatars2.githubusercontent.com/u/591737?v=4","gravatar_id":"","url":"https://api.github.com/users/saneshark","html_url":"https://github.com/saneshark","followers_url":"https://api.github.com/users/saneshark/followers","following_url":"https://api.github.com/users/saneshark/following{/other_user}","gists_url":"https://api.github.com/users/saneshark/gists{/gist_id}","starred_url":"https://api.github.com/users/saneshark/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/saneshark/subscriptions","organizations_url":"https://api.github.com/users/saneshark/orgs","repos_url":"https://api.github.com/users/saneshark/repos","events_url":"https://api.github.com/users/saneshark/events{/privacy}","received_events_url":"https://api.github.com/users/saneshark/received_events","type":"User","site_admin":false},"created_at":"2018-11-13T20:49:01Z","updated_at":"2018-11-13T20:49:01Z","author_association":"CONTRIBUTOR","body":"@dhall yes! I've got some fixes in for some of them, mostly around the stub_mvi method. But encountered another issue with Marshall not being able to dump a Singleton class. Turns out Mvi object has a reference to user, and user has a reference to MVI, and user also has references to other services some of them have the Singleton configuration class... I'm starting to think maybe a JSON dump / load is better, otherwise i might create a User struct that doesn't have reference to MVI."}}
{"actor":{"display_login":"saneshark"}}